PHPのtry catchステートメントの使い方

青灯夜游
リリース: 2023-03-13 08:18:01
オリジナル
8551 人が閲覧しました

php では、 throw キーワードを指定した try catch ステートメントを使用して、プログラム内の例外をキャッチできます。プログラム コードで生成された例外は、try throw ステートメントによってスローされ、catch ステートメントによってキャプチャされます。構文「try{ //コード}catch(Exception $e){//出力エラー}」。

PHPのtry catchステートメントの使い方

このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

プログラム内の例外をキャプチャしたいPHP では、実現するには try catch ステートメントと throw キーワードを使用する必要があります。 try catch ステートメントはフロー制御ステートメントに似ているため、try catch ステートメントを使用して代替の条件付き選択構造を実装でき、throw キーワードは例外をスローできます。 try catch ステートメントの構文形式は次のとおりです。

try{
    // 可能出现异常或错误的代码,比如文件操作、数据库操作等
}catch(Exception $e){    // $e 为一个异常类的对象
    // 输出错误信息
}
ログイン後にコピー

例外処理を必要とするコードは、考えられる例外をキャッチするために try コード ブロックに配置する必要があります。すべてのトライには少なくとも 1 つの対応するキャッチが必要です。複数のキャッチを使用して、さまざまなクラスによって生成された例外をキャッチします。

try コード ブロックが例外をスローしなくなった場合、またはスローされた例外に一致するキャッチが見つからない場合、PHP コードは最後のキャッチにジャンプした後、実行を続行します。

PHP コードで生成された例外は、throw ステートメントによってスローされ、catch ステートメントによってキャッチできます。もちろん、PHP では、catch ブロック内で例外を再度スローすることができます。

例外がスローされると、後続のコードは実行を続行せず、PHP は最初に一致するキャッチを引き続き見つけようとします。例外がキャッチされず、 set_Exception_handler() を使用して適切に処理されない場合、重大なエラーが生成され、UncaughtException... メッセージが出力されます。

[例] プログラム内の例外をキャッチするには、try catch と throw を使用します。

<?php
    try{
        $err = &#39;抛出异常信息,并跳出 try 语句块&#39;;
        if(is_dir(&#39;./test&#39;)){
            echo &#39;这里是一些可能会发生异常的代码&#39;;
        }else{
            throw new Exception($err, 12345);   // 抛出异常
        }
        echo &#39;上面抛出异常的话,这行代码将不会执行,转而执行 catch 中的代码。<br>&#39;;
    }catch(Exception $e){
        echo &#39;捕获异常:&#39;.$e->getMessage().&#39;<br>错误代码:&#39;.$e->getCode().&#39;<br>&#39;;
    }
    echo &#39;继续执行 try catch 语句之外的代码&#39;;
?>
ログイン後にコピー

実行結果は次のとおりです:

捕获异常:抛出异常信息,并跳出 try 语句块
错误代码:12345
继续执行 try catch 语句之外的代码
ログイン後にコピー

サンプル コードの try ステートメント ブロックで、現在のディレクトリに test という名前のディレクトリがあるかどうかを確認します。が存在しない場合は、7 行目のコードが実行され、throw キーワードを使用して例外がスローされます。この例外は、new キーワードによって生成された Exception クラスのオブジェクトであり、オブジェクトはエラー メッセージ $err とエラー コード 12345 で初期化されるため、後で例外がキャッチされたときにこの情報を取得できます (コード)。

例外がスローされると、try ステートメント ブロック内の残りのコードは実行を継続できなくなります。プログラム フローは、対応する catch ステートメント ブロックに転送されて実行され、最後にエラー情報とコードが表示されます。 Exception オブジェクトを通じてそのメンバー関数を呼び出すことによって出力されます。

推奨学習: 「PHP ビデオ チュートリアル

以上がPHPのtry catchステートメントの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!