こんにちは。 私はさくらVPS2Gプランで開発をしているのですが、 デフォルトだとphp_iniファイルでdisplay_errorsがOFFになっているようです。 セキュリティ的にこちらのほうが好ましいのですが、 エラー潰しをしている時に何も出力してくれないのは、時間効率があまり良くありません。 一時的で良いのでエラー出せないかな? ローカルで動作させてからアップロードしろよ、という話なのですが、 今回はphpの関数ini_setを用いて一時的にエラーを出力する方法を残します。
string ini_set ( string $varname , string $newvalue )
指定した設定オプションの値を設定します。
設定オプションは、スクリプトの実行中は新しい値を保持し、スクリプト終了時に元の値へ戻されます。
と公式リファレンスにあるので、これで変更してみましょう。
まずは動かないサンプルを書きます。
<?php
require_once("XXX.php"); //存在しないファイル ?>;
これをブラウザで表示しようとすると、下の画像のような画面になります。
このスクリプトの何処にエラーが出てるのかを出力してみます。
<?php
ini_set('display_errors', 1);
require_once("XXX.php"); //存在しないファイル ?>;
ini_setの1行を追加してブラウザを開いてみます。 すると、下の画像のようにエラーが出力されます!
※注意 ただし、Parse error(多くの場合文法ミス)だとプログラム自体が実行できないので、 ini_setも当然実行されず。。 実行前エラーは表示できません。 そこは目勘を鍛えて発見しましょう。