Fatal error: Allowed memory size of ★★ bytes exhausted (tried to allocate ○○ bytes) in △△ on line □□

エラーメッセージFatal error

概要

 状態:-  閲覧数:5,034  投稿日:2013-04-06  更新日:2013-04-06  
・PHPを実行する際、サーバーに割り当てられたメモリをオーバーした時に出るエラー


エラーメッセージ


Fatal error: Allowed memory size of ★★ bytes exhausted (tried to allocate ○○ bytes) in △△ on line □□


遭遇例


1.サイズが大きいdumpデータを、phpMyAdminでインポートしようとしたら、同エラー
2.親クラスコンストラクタを呼び出そうとしたら、記述がマズかったため、同エラー


対応例


1.メモリ不足なので、PHPの最大使用メモリを増加するよう変更
2.PHPに無理な負担をかけている箇所があれば、記述内容を変更

対応例1.メモリ不足なので、PHPの最大使用メモリを増加するよう変更

 閲覧数:10,044 投稿日:2013-04-06 更新日:2019-11-16 

4種類の方法


a.「php.ini」変更
b.「.htaccess」変更
c.「phpファイル」変更
d.「.user.ini」変更


a.「php.ini」変更


・もっとも確実な方法
・しかし、レンタルサーバでは「php.ini」を変更できない(場合が多い)
memory_limit = 32M
※任意の値を指定可能(256、512等)
※「memory_limit」の値を「512M」へ変更するとびっくりするぐらい処理が早くなるかと言えば、体感的には全くそんなことはない
※CORESERVERでは「CGI版PHP」でのみ「php.ini」が有効。モジュール版(セーフモード)環境では「php.ini」は無効

b.「.htaccess」変更


・「.htaccess」自体がない場合は作成
・「.htaccess」内に「php_value memory_limit」記述がない場合は追記
・レンタルサーバでは「.htaccess」を利用できない場合もある
php_value memory_limit 32M
※任意の値を指定可能(256、512等)
※php_value にて設定する場合、ディレクトリ内に php.iniならびにuser.iniが存在していると動作が不安定になる。名前を変更、もしくは、削除しておく

c.「phpファイル」変更


・phpファイルに直接記述(ヘッダーより上)
・エラーが発生する全てのページに入力する
・状況によっては、結構手間がかかる
・phpを利用できる全ての環境で対処可能
ini_set("memory_limit","32M");
ini_set("memory_limit", "512M");

d.「.user.ini」変更


・PHP5.3以降でのみ利用可

Nginx


php.ini 設定 / CentOS 7 × Nginx

「メモリー変更値」確認方法

対応例2.PHPに無理な負担をかけている箇所があれば、記述内容を変更

 閲覧数:533 投稿日:2013-04-06 更新日:2013-04-06 

前提


・親クラスのコンストラクタは自動実行されない
・だから明示的に呼び出す必要がある


エラー


Fatal error: Allowed memory size
▼子クラス
$this->__construct($debug);//派生クラスのコンストラクタ内で、基底クラスのコンストラクタを実行



修正例


▼子クラス
parent::__construct($debug);//派生クラスのコンストラクタ内で、基底クラスのコンストラクタを実行



Fatal error: Non-abstract method クラス名::メソッド名 must contain body in ○○.php on line △△

Fatal error: Cannot access protected property ○○ in △△ on □□

コメント投稿(ログインが必要)



類似度ページランキング
順位 ページタイトル抜粋
1 Fatal error: Uncaught Error: Call to a member function modify() on string 25
2 Fatal error: Call to undefined method MDB2_Error::execute() in ○○ on line △△ 25
3 ( ! ) Fatal error: Uncaught Abraham\TwitterOAuth\TwitterOAuthException 25
4 SHA-1(Secure Hash Algorithm 1) 25
5 Fatal error: Access level to ▲::$△ must be protected (as in class ●) or weaker 25
6 Fatal error: Uncaught Error: Call to undefined function bcsub() 25
7 Parse error: syntax error, unexpected 'public' (T_PUBLIC) 24
8 ( ! ) Fatal error: Uncaught Abraham\TwitterOAuth\TwitterOAuthException: timed out before SSL handshake 24
9 Fatal error: Class declarations may not be nested in ○○ on △△ 24
10 Fatal error: Call-time pass-by-reference has been removed in 24
11 Fatal error: Call to undefined function **() 23
12 Warning: Missing argument 1 for **(), called in ○○ on line △△ and defined in □□ 23
13 Warning: array_rand() [function.array-rand]: Second argument has to be between 1 23
14 Parse error: syntax error, unexpected $end in ○○.php on line △△ 23
15 Deprecated: Assigning the return value of new by reference is deprecated 23
16 Maximum function nesting level of '256' reached 23
17 Fatal error: Function name must be a string in /○○.php on line △△ 23
18 Fatal error: Non-abstract method クラス名::メソッド名 must contain body in ○○.php on line △△ 23
19 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in ○○.php on line △△ 23
20 ( ! ) Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined 23
2022/11/29 19:27 更新
週間人気ページランキング / 11-22 → 11-28
順位 ページタイトル抜粋 アクセス数
1 PHP用語 92
2 ブラウザを閉じたらセッションデータはどうなるの? | セッション 18
3 Fatal error: Access level to ▲::$△ must be protected (as in class ●) or weaker | Fatal error(エラーメッセージ) 11
4 ブラウザを閉じたらセッションデータはどうなるの? | セッション 9
4 Parse error: syntax error, unexpected 'public' (T_PUBLIC) | Parse error(エラーメッセージ) 9
5 ログイン 7
5 Parse error: syntax error, unexpected T_UNSET in ファイル名 on line 行番号 | Parse error(エラーメッセージ) 7
5 curl で Cookie を使用する 7
6 Fatal error: Uncaught RuntimeException: SplFileObject::__construct(): failed to open stream: Permission denied in | Fatal error(エラーメッセージ) 6
6 セッション管理が必要な理由は、HTTPプロトコルには状態を保持する機能がないため | セッション 6
7 エラーメッセージ 5
7 Parse error: syntax error, unexpected T_INCLUDE, expecting T_FUNCTION | Parse error(エラーメッセージ) 5
8 Fatal error: require_once(): Failed opening required 'PEAR.php' | Fatal error(エラーメッセージ) 4
8 コード例 … 「例外処理」はネストすることができる 4
8 Fatal error: Uncaught HeadlessChromium\Exception\OperationTimedOut: Operation timed out (3sec) in | Fatal error(エラーメッセージ) 4
9 攻撃と被害の流れ / クロスサイトスクリプティング処理を実行するタイミング / 対策は3種類 3
9 問題発生 / 現在(2019/9/9時点)の設定確認 / 新たなエラーメッセージ 3
9 phpinfo(PHP オプションと情報) カテゴリー 3
9 Fatal error: Call to undefined method MDB2_Error::execute() in ○○ on line △△ | Fatal error(エラーメッセージ) 3
9 Fatal error: Class declarations may not be nested in ○○ on △△ | Fatal error(エラーメッセージ) 3
2022/11/29 1:01 更新