2012-05-16 4 views
0

Fatal error: Allowed memory size of 194217728 bytes exhausted (tried to allocate 261904 bytes) in C:\xampp\htdocs\test\ci\application\libraries\datamapper.php on line 5CI2 hmvc datamapper

무엇이 문제입니까? 그것은 올바르게 작동하지만 오류가 발생하는 datamapper 함수를 실행하려고 할 때.

데이터베이스 설정은 ../config/database.php

+0

은을 위해 다음 다른 그 많은 메모리를 사용하지 않습니다 코드 및 내부 데이터 구조. 오류를 트리거하는 코드를 제공하지 않지만 모든 레코드가 개체로 변환된다는 것을 알고 있어야합니다. 10.000 레코드의 get()은 확실히 나쁜 생각입니다. 내가 할() 함수 클래스 사용자가 { DataMapper를 확장하기 위해 시도 할 때 또한 , 거기 datamapper 라이브러리의 5 호선에서 어떤 코드가 없기 때문에 뭔가 이상한 여기에 것입니다 ... – WanWizard

+0

당신이 바로 그 오류가 온다 public $ table = "user"; function get() { $ o = 새 사용자(); return $ o-> get(); } –

+0

내가 만들 때 return $ o-> get_where (array ('id'=> 53), 1, "0"); } –

답변

1

이 메모리 문제에 올바른 것입니다. 귀하의 코드에있는 뭔가가 메모리를 먹고 있습니다. memory_get_peak_usage() 및 memory_get_usage()를 사용하여 현재 진행중인 작업을 더 잘 이해하거나 xdebug + webgrind와 같은 프로파일 러를 사용할 수 있습니다.

http://us3.php.net/manual/en/function.memory-get-usage.php http://us3.php.net/manual/en/function.memory-get-peak-usage.php 자체 Datamapper https://github.com/jokkedk/webgrind