PHP: Allowed memory size exhausted
PHPのメモリ制限エラーの解決方法
概要
PHPスクリプトが許可されたメモリ量を超えた場合に発生するエラーです。
エラーメッセージ
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes)
原因
- 大量データ処理: 大きな配列やファイルの読み込み
- 無限ループ: メモリリークを引き起こすループ
- メモリ制限が低い: php.iniの設定が不足
解決策
1. php.iniで制限を増やす
| |
2. スクリプト内で設定
| |
3. ジェネレータを使用
| |
4. チャンク処理
| |
よくある間違い
- ファイル全体をメモリに読み込む
- 不要な変数を解放しない
PHP の他のエラー
この記事は役に立ちましたか?