1. Qiita
  2. 投稿
  3. PHP

PHPで「Notice:」のエラー表示を抑える方法

  • 5
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

PHPは、利用しているバージョンによって次のようなエラーメッセージが表示されることがあります。

Notice: Undefined index: xxxx in ...

これは、「なにも値が設定されていない変数や配列を、利用しようとしている」という状況で発生する警告で、例えば次のようなプログラムで発生します。

if ($_POST['name'] == '') {
    echo '名前が入力されていません';
}

これを防ぐには次のように変更します。

if (isset($_POST['name']) && $_POST['name'] === '') {
...

ただし、この Noticeのエラーが表示されるようなったのは、PHPの最近のバージョンからだったため、サンプルプログラムやオープンソースのアプリケーションなどでは、大量の Noticeが発生する場合もあります。

そのような場合は、PHPの設定を変更することでも表示を抑えることができます。

php.iniをエディタなどで編集し、535行目付近の「error_reporting =...」という箇所を、次のように書き換えます

error_reporting = E_ALL & ~E_NOTICE

XAMPPを利用している場合、ControlPanelの「Apache」の行にある「Config」ボタンから編集することができます。

2013-11-19_00-40-44.png

これで一時的に表示を抑えることができます。