web-dev-qa-db-ja.com

CakePHP:致命的なエラー:536870912バイトの許容メモリサイズが使い果たされました(52バイトを割り当てようとしました)

こんにちは、CakePHP v 1.3でアプリを実行しています。 wampサーバーをv2.4に更新しました。更新後、このエラーメッセージが表示されました。php.ini設定にこれらの変更を加えました。


  • memory_limit = 128M
  • file_uploads = ON
  • upload_max_filesize = 128M
  • max_input_time
  • max_execution_time = 300
  • post_max_size = 128M
  • realpath_cache_size = 16k
  • realpath_cache_ttl = 120

しかし、私はまだこれらのエラーメッセージを受け取っています:

CakePHP : Fatal error: Allowed memory size of 536870912 bytes exhausted 
(tried to allocate 52 bytes) in C:\wamp\www\gtgcrm\cake\libs\model\
datasources\dbo\dbo_mysql.php on line 775

私が逃したものは?任意の提案をいただければ幸いです!

11
Asfaq Tamim

コントローラアクションでを使用してメモリ制限を増やすことができます

ini_set('memory_limit', '256M');

また、タイムアウト制限を増やすこともできます

set_time_limit(0); Infinite
9
Anubhav

php.iniのメモリ制限を増やしてください。これは適切な解決策ではありません。

このケースは、コードからも発生する可能性があります。たとえば、無限ループ、大量のデータの処理、またはデータベースクエリです。コードをチェックする必要があります。無限ループまたはそのようなタイプのケースがあった可能性があります。

5
Girish

エラーは明白であり、それはあなたのiniファイルまたは.htaccessで設定することによってメモリ制限を超えていることが原因です。 Anubhayが書いたように、phpを介して設定することもできます。以下の変数はあなたの懸念です

php_value post_max_size 1000M
php_value upload_max_filesize 2500M
php_value max_execution_time 6000000
php_value max_input_time 6000000
php_value memory_limit 2500M

コンテイナブルケーキの動作を使用して、クエリデータを最適化できます。メモリサイズを増やすよりも、コード/データを最適化することをお勧めします。

ありがとう

3
Moyed Ansari
Try...
Allowed memory size 
ini_set('memory_limit', '-1');
2
Indrajeet Singh