PHP - エラー制御演算子

エラー制御演算子

PHP はエラー制御演算子をサポートしています。エラー制御演算子は @ で表現されます。式の前にエラー制御演算子を付けた場合、その式により生成されたエラーメッセージは無視されます。

<?php
  /* 意図的なエラーを発生させる */
  $my_file =  file ('non_existent_file'); // Warning メッセージを出力する
  $my_file = @file ('non_existent_file'); // Warning メッセージを出力しない
?>
エラー制御演算子

エラー制御演算子は、式でのみ動作します。基本的なルールは、値を得ることができる場合に、エラー制御演算子を前に付けることが可能です。例えば、変数、関数、include コール、定数等の前にエラー制御演算子をつけることが可能です。関数、またはクラスの定義や ifforeach 等のような条件構造の前にエラー制御演算子を付けることはできません。

エラー制御演算子は、スクリプトの実行を終了するような致命的なエラーの出力さえ抑圧します。そのため、ある関数のエラー出力を抑制するためにエラー制御演算子を使用した場合、その関数が利用できなかったり、ミスタイプがあった場合でも、原因を示すことなくその場所でスクリプトは終了してしまいます。

関連記事