ホームページ  >  記事  >  バックエンド開発  >  PHPで例外をキャッチするにはどうすればよいですか?

PHPで例外をキャッチするにはどうすればよいですか?

WBOY
WBOYオリジナル
2016-06-23 14:00:48954ブラウズ

PHP で例外をキャッチするには?
同様の .net try catch メカニズムはありますか?
PHP は行ごとにデバッグできません。


ディスカッションへの返信(解決策)

いくつかは同じように書かれています
try {

} catch (Exception $e) {
print $e->getMessage()

}

は何か似たようなネットトライキャッチメカニズムはありますか? これは本当ですよ〜
PHPは一行ずつデバッグできないのが痛いです! 著者は適切な IDE を見つけられませんでした

実際、PHP のデバッグはいつでも調整できます。最も簡単な方法は、必要に応じて調整することです。もちろん、zend-studio もブレークポイント関数のデバッグを提供しますが、これよりもはるかに便利ではありません。
実際、それぞれに独自の利点があります、兄弟、そのまま使用したほうがいいでしょう。

#1 かわいいシロクマ 正しい解決策

try{	$a="sgfdfgdf";	$b= (int)$a;	echo($b);}catch(exception $e){	echo("出错啦".$e->getMessage());//这里并木有执行啊}

また、try{} ステートメント ブロックで例外 throw new Exception('It is anException!') をスローし、catch(Exception $) でキャッチする必要もあります。 e)。

try{} ステートメント ブロックで例外 throw new Exception('It is anException!') をスローし、それを catch(Exception $e) でキャッチする必要もあります。
この方法でキャプチャできますが、やはりエラー メッセージを指定する必要があります
私が欲しいのはエラー メッセージです。すでにわかっていますが、それでもキャプチャしたいのです

例外を見つけるには echo を使用します。PHP ではできません。やらないでください

それから先に進みます php の error_log を見てください... さまざまな詳細なエラー メッセージが表示されます... 他に何かキャッチできるものはありますか...

それから php の error_log を見てください... そこにありますさまざまな詳細なエラーメッセージが表示されます。他には何が表示されますか...
php の error_log はどこで確認できますか?

エラーには通常 2 種類あり、1 つは構文エラーなど、PHP がキャプチャできるものです。別の種類の論理エラーがあります。この種類のエラーはマシンではキャッチできないため、手動でキャッチするために try catch が使用されます。
あなたが話しているエラーは前者だけだと思いますが、エラーメッセージdisplay_errors = Onをオンにすると確認できます。

set_Exception_handle もあります。

コードには例外はありません。もちろん、その文は実行されません

PHP コード

try{
$a="sgfdfgdf"
$b= (int)$a
echo($b); ;
}
catch(例外 $e){
echo("何か問題が発生しました".$e->getMessage());//ここでは実行はありません
}

コードには例外はありません。もちろん実行されません 文

5 階の telankes2000 からの返信を引用:

PHP コード

try{
$a="sgfdfgdf"
$b= (int)$a;
echo($b; );
}
catch(例外 $ e){
echo("何か問題が発生しました".$e->getMessage());//ここでは実行はありません
}
整数変換エラー これはエラーではありません

この種のエラー システムは自動的にキャプチャされるべきです

えー、これは間違いではありません、PHP では自動変換です

14 階の helloyou0 からの返信を引用します:

あなたのコードには例外はありません、もちろん例外は発生しますその文は実行しないでください

5階のtelankes2000からの返信を引用します:

PHPコード

$b= (int)$a;
}
catch(例外 $e){
echo("何か問題が発生しました". $e->getMessage());//ここでは実行はありません
...

整数変換エラー これはエラーではありません。どの言語でも、強制的な型変換はエラーになりません。
期待した結果が得られない場合もありますが

PHP のエラー例外は Java の例外と似ていますが、通常は自分でスローする必要があります: 例:

try{
$m = 0;

if($m < 1) {

throw new Exception('m='.$m.':less than zero');
echo $m;
} catch(例外 $e){
echo "エラー [line->".( $ e->getLine())."]: ".($e->getMessage());

PHP の弱い型 データ型を変更しても問題ありません

除数が 0 の場合、例外がスローされるのがわかります

私も同じ質問があります。

たとえば、php で $_GET を使用しますが、実際には get パラメーターが渡されません。この時点ではエラーが発生します。try catch ではこのエラーをキャッチできません。

get エラーが発生したことを確認し、それに応じて処理するにはどうすればよいですか?

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。