日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

【转】PHP的异常处理类Exception的使用及说明

發(fā)布時間:2024/4/14 php 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【转】PHP的异常处理类Exception的使用及说明 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、首先php5提供了基本的異常處理類,可直接使用

<?php class Exception {protected $message = 'Unknown exception'; // 異常信息protected $code = 0; // 用戶自定義異常代碼protected $file; // 發(fā)生異常的文件名protected $line; // 發(fā)生異常的代碼行號function __construct($message = null, $code = 0);final function getMessage(); // 返回異常信息final function getCode(); // 返回異常代碼final function getFile(); // 返回發(fā)生異常的文件名final function getLine(); // 返回發(fā)生異常的代碼行號final function getTrace(); // backtrace() 數(shù)組final function getTraceAsString(); // 已格成化成字符串的 getTrace() 信息/* 可重載的方法 */function __toString(); // 可輸出的字符串 } ?>

簡單的使用如下:(通過異常,拋出錯誤信息)

try {$error = 'my error!';throw new Exception($error) } catch (Exception $e) {echo $e->getMessage(); }

2、我們可以擴展此類,方便我們的使用

class MyException extends Exception {// 重定義構造器使 message 變?yōu)楸仨毐恢付ǖ膶傩?/span>public function __construct($message, $code = 0) {// 自定義的代碼// 確保所有變量都被正確賦值parent::__construct($message, $code);}// 自定義字符串輸出的樣式public function __toString() {return __CLASS__ . ": [{$this->code}]: {$this->message}\n";}public function customFunction() {echo "A Custom function for this type of exception\n";} }

  異常處理的基本思想是代碼在try代碼被調用執(zhí)行。如果try碼塊出現(xiàn)錯誤,我們可以執(zhí)行一個拋出異常的處理。某些編程語言,如java,,在特定情況下將自動拋出異常。在php中,異常必須手動拋出。可以使用如下方式拋出一個異常:

  Throw new Exception(‘message’,code);

  Throw 關鍵字將觸發(fā)異常處理機制,它是一個語言結構,而不是一個函數(shù),但是必須給它傳遞一個值。它要求一個接受對象。在最簡單的情況下,可以實例化一個內置的Exception類。

  最后,在try代碼之后,必須至少給出一個catch代碼塊。可以將多個catch代碼塊與一個try代碼塊進行關聯(lián)。如果每個catch代碼塊可以捕獲一個不同類型的異常,可以使用多個catch代碼塊是有意義的。例如,如果想捕獲Exception類的異常,代碼如下

Catch(Exception $e){//handing exception }Catch代碼捕獲的對象就是導致異常并傳遞給throw語句的對象(被throw 語句拋出)。使用Exception 類的實例,是不錯的選擇。Exception類提供了如下的內置方法:Getcode()   —返回傳遞給構造函數(shù)的代碼。GetMessage() —返回傳遞給構造函數(shù)的消息。getFile()     —返回產(chǎn)生異常代碼的文件的路徑getLine()    —返回產(chǎn)生異常的代碼所在的行。

注意:

  • 當捕獲到一個異常后,try()塊里面的后續(xù)代碼將不會繼續(xù)執(zhí)行,而是會嘗試查找匹配的“catch”代碼塊
  • ?當拋出一個異常后,如果不進行catch處理,則會報“Uncaught exception 'Exception'”錯誤
  • <?phpfunction test($val){if ($val>100){throw new Exception("提示信息:您輸入的值過大");}}test(111); ?>

      3.當一個異常拋出后,catch語句塊可以進行處理也可以不處理

    以下是我用戶注冊功能的部分代碼

    try{//check forms filled inif(!filled_out($_POST)){throw new Exception('你還沒有填寫表單,請回去填寫');}//check email address not validif(!check_email($email)){throw new Exception('郵件的格式不正確');}//檢查密度的長度是否大于6if(strlen($passwd<6)){throw new Exception('密度的長度應該大于6');}//檢查兩次密碼是否相等if($passwd!=$passwd1){throw new Exception('兩次密碼不一樣,請重新輸入');}//檢查用戶名的長度是否正確if(strlen($username)>16){throw new Exception('用戶名的長度不符,請重新輸入');}} catch(Exception $e){echo $e->getMessage(); //輸出異常信息。}

    轉載自:http://www.cnblogs.com/zhmt/archive/2012/03/10/2389347.html?和?http://www.cnblogs.com/yangsen/archive/2012/01/30/2331595.html

    總結

    以上是生活随笔為你收集整理的【转】PHP的异常处理类Exception的使用及说明的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 久久久久久久久网站 | 久久人精品 | 奇米影视久久 | 中文字幕在线视频第一页 | 亚洲免费成人av | 99热最新在线| 法国空姐在线观看视频 | 欧美成人精品欧美一级私黄 | 久久av红桃一区二区小说 | 另类二区 | 青青av| 蜜桃精品视频在线观看 | 亚洲天堂毛片 | 国产剧情一区二区三区 | 国产经典一区二区三区 | 99爱免费视频 | 波波野结衣 | 国产免费脚交足视频在线观看 | 大牛影视剧免费播放在线 | 伊人久久精品一区二区三区 | 99中文字幕 | 亚洲石原莉奈一区二区在线观看 | 日本在线视频www色 国产在线视频网址 | 五月天免费网站 | 精品国产18久久久久久二百 | 亚洲一区黄色 | 国产一区二区三区在线播放无 | 久久久av片 | 久久国产免费看 | 国产区一区二区三 | 虫族全黄h全肉污文 | 日本黄色中文字幕 | 国产综合精品 | 色亚洲天堂| 超碰人人网 | 久久亚洲AV无码 | 中国a级黄色片 | 四虎5151久久欧美毛片 | 一级免费a | 一个人在线观看www软件 | 国产粉嫩呻吟一区二区三区 | 欧美做爰性生交视频 | 猫咪av在线| 男男黄色片 | 久久精品99国产国产精 | 亚洲另类一区二区 | 国产欧美日韩久久 | 狠狠躁狠狠躁视频专区 | 操操影视 | 婷婷激情五月 | 国产精品久久 | 免费欧美一级 | 不卡的av在线免费观看 | 美女福利影院 | 福利电影一区 | 蜜桃久久久 | 欧美一区二区三区成人久久片 | 欧美a级成人淫片免费看 | 国产一区二区免费在线 | 欧美日本另类 | 黄色免费网页 | 国产山村乱淫老妇女视频 | 羞羞羞网站 | 男女黄色又爽大片 | 麻豆传媒在线播放 | 国产精品久久久久久久免费 | 蜜臀av性久久久久蜜臀aⅴ麻豆 | 国产成人精品一二三区 | 女同一区 | 亚洲xxxx18| 厨房性猛交hd | 日本黄色片免费看 | 国产精品久久久久一区二区 | 欧美一级淫片免费视频黄 | 日韩深夜视频 | 日韩精品免费观看 | 88福利视频 | 人妻精品久久久久中文 | 67194少妇| 国产成人tv | 国产视频网站在线观看 | 国产日韩精品中文字无码 | 欧美国产一区二区在线观看 | 日本国产精品 | 亚洲+小说+欧美+激情+另类 | 午夜三区 | 欧美一级做 | 久久人人爽人人人人片 | 在线成人免费观看 | 成人91av| 亚洲免费观看高清完整版在线 | 综合久久久久久久 | 国产精品成久久久久三级 | 精品在线观看一区二区 | 成年人免费在线观看网站 | 日本高清www | 日本少妇激情视频 | 国产一级淫 | 亚洲免费黄色片 |