エラーメッセージ

エラーメッセージ

 状態:  閲覧数:7,256  投稿日:2010-04-27  更新日:  
■エラーメッセージの構成
PHPが出すエラーメッセージは、3つの要素で構成されている

Parse error: syntax error, unexpected ';' in /***/***.php on line ***
|エラーレベル| メッセージ | ファイルのパスと行番号 |

▼1.「エラーレベル」
エラーの性質(重要度)を示す。構文が間違っている、実行不可能な致命的なものである等。

▼2.「メッセージ」
問題の要素やエラーの性質を補足。原因を特定するために利用する。エラーを発生させたモジュール名やPHPのトークン(これ以上に分解することのできない最小単語)を表示。

▼3.「ファイルのパスと行番号」
エラーの発生個所を示す。あくまでもエラー発生位置を示していて、問題箇所と必ずしも一致するわけではない(エラー原因となる箇所と、エラー発生する箇所は違う場合もある、という意)。この行を基準に、それ以前で原因を探す、ことも多い。

▼1.「エラーレベル」
▽Parse error:
PHPの構文から外れスクリプトとして成り立っていないことを示すエラー。構文が間違っているため、このメッセージが表示されている限り、スクリプトが実行されることはない。
対応するカッコや " がない、変数頭の "$" や文末の ";" 忘れ、演算子の評価順序違いなど、ほとんどが単純な記述ミスや勘違いによるもの。

▽Fatal error:
実行時に出るエラーで、これ以降の処理が実行できないほどの「致命的エラー」を表している。このエラーが発生するとそこで強制終了される。

▽Warning:
実行時に出るエラーで、以降の処理に影響を与える可能性がある「警告」。Warning が発生しても処理は続けられるが、これ以降も関連してエラーが出る可能性が高いので、いくつも発生する場合は初めの Warning から解決することが望ましい。

▽Notice:
プログラムの実行には影響ないけれど、これはこれでいいのかな? 程度の PHP からの「通知」。Notice が発生しても処理継続可能。バグの原因になったりセキュリティホールを生む可能性もあるため、Notice も ゼロになるようなコードを書くことが望ましい。
なお、PHPのデフォルトでは、error_reporting = E_ALL & ~E_NOTICE (Notice以外のエラーを表示)が設定されているため、Notice が表示されることはない。php.ini か error_reporting関数で E_ALL を指定すると全てのエラーメッセージが表示されるようになるので、開発段階ではすべて表示するよう設定することが望ましい。


▼2011.6.6.追記
// 全ての PHP エラーを表示させる
error_reporting(-1);

□使用例:連想配列をunset();後、var_dumpして、下記エラーを確認したかった際、利用
Notice: Undefined index:

□下記でもO.K.
error_reporting(E_ALL); //エラー出力のレベルを設定→すべてのエラー
ini_set("display_errors", "On"); //画面上にエラー出力を表示

□下記だけだと、NG。画面に表示されないので
error_reporting(E_ALL); //エラー出力のレベルを設定→すべてのエラー



syntax error

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



週間人気ページランキング / 7-18 → 7-24
順位 ページタイトル抜粋 アクセス数
1 PHPにおけるメソッドのオーバーライドについて /「引数の数や型は、親クラスのメソッドと完全に一致していなければなりません。」とは具体的にどういう意味ですか? 6
1 PHPで定数を定義する方法は2種類ある / 配列定数の定義 6
2 Parse error: syntax error, unexpected 'public' (T_PUBLIC) | Parse error(エラーメッセージ) 5
3 ブラウザを閉じたらセッションデータはどうなるの? | セッション 4
4 http_build_queryとは? / 構文 /パラメータ 3
4 T_CONSTANT_ENCAPSED_STRING | エラーメッセージ 3
5 curl で Cookie を使用する 2
5 ( ! ) Fatal error: Uncaught Abraham\TwitterOAuth\TwitterOAuthException: 現在この機能は一時的にご利用いただけません | Fatal error(エラーメッセージ) 2
5 オブジェクト関係マッピング | データベース関連 2
5 Fatal error: Access level to ▲::$△ must be protected (as in class ●) or weaker | Fatal error(エラーメッセージ) 2
5 Warning: PDO::query(): LOAD DATA LOCAL INFILE forbidden | Warning(エラーメッセージ) 2
5 Notice(エラーメッセージ) カテゴリー 2
5 エラーレベル | エラー設定(エラーメッセージ) 2
5 Fatal error: require_once(): Failed opening required 'PEAR.php' | Fatal error(エラーメッセージ) 2
5 Fatal error: Uncaught Error: Call to a member function modify() on string | Fatal error(エラーメッセージ) 2
5 ガベージコレクション | 機能 2
5 ブラウザを閉じたらセッションデータはどうなるの? | セッション 2
5 ( ! ) Warning: Declaration of xxxx should be compatible with | エラーメッセージ 2
5 Notice: Array to string conversion in ★★ on line ▲▲ Array | Notice(エラーメッセージ) 2
6 ( ! ) Deprecated: implode(): Passing glue string after array is deprecated. Swap the parameters in ★★★ headless-chromium-php/vendor/wrench/wrench/lib/Wrench/Protocol/Protocol.php | エラーメッセージ 1
2025/7/25 1:01 更新