私の index.php ファイルの中から、たとえば、別の PHP ファイルがエラーなしで実行されるかどうかを確認したい (そうであれば、それを含めます)。実際に失敗して致命的なエラーを返す場合は、明らかにしたいと思います。含めないようにします。助言がありますか?ありがとう...
質問する
184 次
3 に答える
1
CLIの-l
パラメーターを使用できます。php
php -l filename.php
出力を解析します。
$o = `php -l filename.php`;
if (strpos($o, 'No syntax errors detected') !== false) {
echo 'No errors';
} else {
echo 'There are errors';
}
于 2012-11-05T00:49:34.063 に答える
0
おそらく、2 番目のファイルを個別に実行したくないでしょう。そうは言っても、あなたは2つのことのうちの1つを行うことができます...
1.) 本当にそれを個別に実行するインクルードとして使用したい場合は、CURL などで呼び出すことができ、期待される結果または失敗メッセージのいずれかを出力し、それを読み取ってそれに応じて処理することができます。
2.) 関数/クラス/etc の実行を try/catch ステートメントに含めて、発生したエラーを適切に処理します。http://php.net/manual/en/language.exceptions.phpは、この方法でもう少し役立つかもしれません。
于 2012-11-05T00:49:44.250 に答える
0
これにより、共有変数/関数/状態/スコープなどを使用せずに、スクリプトが別のプロセスとして実行されます...
$cmd = 'php file.php';
exec($cmd, $ar, $exit_status);
$wasFatal = $exit_status == 255;
Webサーバーのphp.iniとは異なるphp.iniで実行される可能性が非常に高いため、構成やおそらくphpバージョンの違いを期待してください。
于 2012-11-05T00:54:24.673 に答える