2012-11-11 2 views
1

PHP (CakePHP) 응용 프로그램으로 파일을 업로드하려고하면 오류가 발생했습니다.PHP에서 허용 메모리가 부족하여 메모리가 거의 할당되지 않았습니다.

Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 9660 bytes) in /home/xsu0653/public_html/administer/app/models/behaviors/sf_upload.php on line 156

필자의 php.ini 설정에서 허용되는 메모리 제한은 16MB로 설정되어 있습니다.

이 오류 메시지는 내 응용 프로그램은 9660 바이트를 할당하려고 노력했다. 9,660 바이트는 0.009MB라고 생각합니다. 이 오류는 약간의 메모리 할당을 함께 무슨 일이 생긴 이유

나는 이해할 수 없다. 그리고이 오류는 언제든지 발생하며, 몇 번만 발생합니다. 너무 이상합니다. 이 할당 시도 실패 양을 참조에

+0

무엇을하려고합니까? 아마도 당신의 질문에 코드를 게시 할 수 있습니다. 그렇지 않으면 메모리 제한을 늘리라고 제안하는 것 이외에 다른 것을 돕기가 어렵습니다. – nickhar

답변

3

. 한계를 넘는 9,660 바이트를 차지했습니다. 이 스크립트를 통해 실행되는

+1

단지 부록 - 한 번에 9660 바이트를 할당하는 재귀 호출에 의한 것일 수 있습니다. 한계를 초과 한 것은 최종 할당 (함수 호출)뿐입니다. – Eric

0

PHP는 동적으로 메모리를 할당 - 또한 잘 지내도 할당을 취소하려고합니다.

This error message says my application tried to allocate only 9660 bytes.

오류 메시지의 9660 바이트는 최신 할당을 참조하십시오. 낙타의 뒤를 깨는 속담 짚처럼 생각하십시오. 스크립트가 이미 구성된 한계에 매우 가깝게 할당 한 다음 제한을 초과하여이 오류를 표시하는 마지막 조금을 할당하려고합니다. 케이크 같은

프레임 워크 모듈이 사용중인에 따라, 메모리 사용량이 오히려 비효율적 일 수있다 - 그리고 당신은 그들이 한계를 올리는 것이 좋습니다 것을 발견 할 것이다.

또한 큰 배열을 설정 해제하거나 더 이상 필요하지 않을 때 버퍼를 취소하여 일을 개선하는 데 도움이 될 수 있습니다.

관련 문제