検索
ホームページバックエンド開発PHPチュートリアルExamples を使用して PHP5 例外処理を分析する_PHP チュートリアル
Examples を使用して PHP5 例外処理を分析する_PHP チュートリアルJul 21, 2016 pm 02:52 PM
phpphp5対処する事例分析異常なモジュール使用言語

<?php
/**
* ■PHP5における例外処理
*
* PHP 5 では、他の言語と同様の例外処理モジュールが追加されています。 PHP コードで生成された例外はスローされる可能性があります
* ステートメントがスローされ、catch ステートメントによってキャッチされます。例外処理を必要とするコードは、try コード ブロック内に配置して
する必要があります。 * 考えられる例外をキャッチします。すべてのトライには少なくとも 1 つの対応するキャッチが必要です。複数のキャッチを使用する
* 異なるクラスによって生成された例外をキャッチできます。 try コード ブロックが例外をスローしなくなった場合、または一致する catch が見つからなかった場合
* 例外がスローされると、PHP コードは最後のキャッチにジャンプした後、実行を継続します。もちろんPHP
* catch ブロック内で例外を再度スローできるようにします。
* 例外がスローされると、後続のコードは続行されません
* が実行され、PHP は最初に一致するキャッチを見つけようとします。例外がキャッチされず、
* 対応する処理に set_Exception_handler() を使用する必要がない場合、PHP は
を生成します ※重大なエラーとなり、プロンプトメッセージUncaught Exception...(キャッチされない例外)が出力されます。
*/
?>
<?php
/**
* Exception.php
*
* ■㈡PHP5の組み込み例外クラスの属性とメソッド
* 以下のコードは、組み込みの例外処理クラスの構造を説明するためのものであり、実際に使用できるコードではありません。
*/

クラス例外{
protected $message = '不明な例外' // 例外メッセージ
; protected $code = 0 // ユーザー定義の例外コード
; protected $file; // 例外が発生したファイル名
protected $line; // 例外が発生したコード行番号

関数 __construct($message = null, $code = 0); 最終関数 getMessage(); // 例外メッセージを返す
Final function getCode(); // 例外コード(コード名)を返す
Final function getFile(); // 例外が発生したファイル名を返します
Final function getLine(); // 例外が発生したコード行番号を返します
最終関数 getTrace() // backtrace() 配列
Final function getTraceAsString(); // 文字列にフォーマットされた getTrace() 情報

オーバーロード可能なメソッド

function __toString(); // 出力可能な文字列
}

?>

<?php
/**
* 構文 .php
*/

//■㈢文法構造と分析

//PHP には次の 2 つの例外スロー形式があります

//【1】試して...捕まえて...
{
を試してください //データベースエラーやファイルエラーなどの異常な操作を実行します
}キャッチ (例外 $e){
//エラーメッセージを出力します
}

//【2】投げる

$message='I は try{} ブロックで実行する必要があります。例外が発生した場合、I ($message) は上記の $e などの catch() の例外オブジェクトのインスタンスに返されます (渡されます)。
$code=123; //エラー コード番号。catch ブロックで $e->getCode(); を使用すると、エラー コード番号をカスタマイズできます

新しい例外をスローします($message,$code)

//JAVA を学習する際は、PHP の例外処理にはスローがないことに注意してください

?>

<?php

/**
* Example.php
*/
//■㈣PHP 例外処理をマスターするための 2 つの例


//例 [1] try...catch を使用します
/* PDO は mysql データベースに接続します。PDO をまだ見ていない場合は、まず PDO のコンストラクターを参照するか、例 1 をスキップして例 2 を参照してください */
$dsn = 'mysql:host=localhost;dbname=testdb'; $user = 'dbuser'; $パスワード = 'dbpass';
{
を試してください $dbh = new PDO($dsn, $user, $password); //データベース接続オブジェクトの作成では例外が発生する傾向があります
echo '上記の例外がある場合は表示されません'; } キャッチ (PDOException $e) {
echo '接続に失敗しました: ' $e->__toString(); }
?>

<?php
//例[2] try..cathcとthrowを併用しています
{
を試してください $error = '例外メッセージをスローし、try ブロックから飛び出しました'; if(is_dir('./tests')){
echo 'do sth.'; }その他{
新しい例外をスローします($error,12345); }
echo '上記に例外がある場合は、私の番ではありません! ~<br />',"n"; } catch (例外 $e) {
echo '例外をキャッチ: ', $e->getMessage(),$e->getCode(), "n<br />" //$error と 123456 を表示します
; }
echo '実行を継続'
?>

<?php
//JAVA には例外クラスやスローなどが多すぎるため、PHP の処理は JAVA よりもはるかに簡単に学習できます
?>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/371514.html技術記事
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
php5和php8有什么区别php5和php8有什么区别Sep 25, 2023 pm 01:34 PM

php5和php8的区别在性能、语言结构、类型系统、错误处理、异步编程、标准库函数和安全性等方面。详细介绍:1、性能提升,PHP8相对于PHP5来说在性能方面有了巨大的提升,PHP8引入了JIT编译器,可以对一些高频执行的代码进行编译和优化,从而提高运行速度;2、语言结构改进,PHP8引入了一些新的语言结构和功能,PHP8支持命名参数,允许开发者通过参数名而不是参数顺序等等。

Java中的NoSuchFieldError异常常见原因是什么?Java中的NoSuchFieldError异常常见原因是什么?Jun 24, 2023 pm 09:00 PM

Java中的NoSuchFieldError异常常见原因是什么?Java是一种跨平台的面向对象编程语言,多用于开发企业级应用程序和移动应用程序等。在Java程序开发中,NullPointerException、IndexOutOfBoundsException、ClassCastException等异常经常会出现,而NoSuchFieldError异常也是比

Java中的ClassCastException异常常见原因是什么?Java中的ClassCastException异常常见原因是什么?Jun 25, 2023 am 10:37 AM

Java中的ClassCastException异常常见原因是什么?Java语言中,ClassCastException异常是一种运行时异常,它发生在Java程序在运行时试图将一个对象强制转换为不兼容的数据类型时。在这种情况下,编译器将无法提前检查出类型不兼容的错误,而是在程序运行时抛出异常。在Java中,ClassCastException异常通常发生在以

Java中的StackOverflowError异常常见原因是什么?Java中的StackOverflowError异常常见原因是什么?Jun 25, 2023 am 08:19 AM

Java中的StackOverflowError异常常见原因是什么?在使用Java编程时,如果程序出现了StackOverflowError异常,那么程序将会崩溃,并且输出错误信息。那么什么是StackOverflowError异常,这种异常一般发生在哪些情况下呢?今天我们就来了解一下关于Java中StackOverflowError异常的常见原因。一、什么

Java中的FileNotFoundException异常常见原因是什么?Java中的FileNotFoundException异常常见原因是什么?Jun 25, 2023 am 09:37 AM

Java中的FileNotFoundException异常常见原因是什么?在Java开发过程中,异常是难免出现的。其中FileNotFoundException是一种十分常见的异常,可能会给开发者带来不必要的麻烦和时间的浪费。本文将探讨FileNotFoundException异常的常见原因,以及如何避免和解决它。一、FileNotFoundExceptio

php5如何改80端口php5如何改80端口Jul 24, 2023 pm 04:57 PM

php5改80端口的方法:1、编辑Apache服务器的配置文件中的端口号;2、辑PHP的配置文件以确保PHP在新端口上工作;3、重启Apache服务器,PHP应用程序将开始在新的端口上运行。

Java中的SecurityException异常常见原因是什么?Java中的SecurityException异常常见原因是什么?Jun 25, 2023 am 09:04 AM

Java中的SecurityException异常是一种常见的异常类型,它通常在Java应用程序中出现,可能会给开发人员带来不少麻烦。本文将从几个方面介绍SecurityException异常的常见原因,帮助开发人员更好地理解、避免和解决这种异常。安全管理器限制Java中的SecurityManager是一组权限检查机制,用于保护Java应用程序安全。Sec

推荐哪款鼠标连点器软件使用效果较好?推荐哪款鼠标连点器软件使用效果较好?Jan 02, 2024 pm 07:54 PM

用什么鼠标连点器比较好对于连点器,我推荐使用AutoClicker。它是一款简单易用的鼠标连点软件,可以帮助你自动点击鼠标。原因是AutoClicker具有以下优点1.界面简洁直观,操作简单,适合初学者使用。2.支持自定义点击间隔时间,可以根据需要调整点击速度。3.可以设置点击次数或持续点击,满足不同的需求。4.免费软件,无需付费购买。如果你想使用连点器,可以尝试一下AutoClicker。生死狙击2罗技鼠标宏怎么设置以下是在生死狙击2中设置罗技鼠标宏的步骤:1.首先,确保你已经购买并安装了罗技

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。