最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php錯誤、異常處理機制(補充)

 更新時間:2012年05月07日 20:58:39   作者:  
異常處理: 意外,是在程序運行過程中發(fā)生的意料這外的事,使用異常改變腳本正常流程
一、錯誤處理
異常處理: 意外,是在程序運行過程中發(fā)生的意料這外的事,使用異常改變腳本正常流程
PHP5中的一個新的重要特性
復(fù)制代碼 代碼如下:

if(){
}else{
}
try {
}catch(異常對象){
}

1. 如果try中代碼沒有問題,則將try中代碼執(zhí)行完后就到catch后執(zhí)行
2. 如果try中代碼有異常發(fā)生,則拋出一個異常對象(使用throw),拋出給了catch中的參數(shù), 則在try中代碼就不會再繼續(xù)執(zhí)行下去
直接跳轉(zhuǎn)到catch中去執(zhí)行, catch中執(zhí)行完成, 再繼續(xù)向下執(zhí)行
注意: 提示發(fā)生了什么異常,這不是主要我們要做事,需要在catch中解決這個異常, 如果解決不了,則出去給用戶
二、自己定義一個異常類
作用:就是寫一個或多個方法解決當發(fā)生這個異常時的處理方式
1. 自己定義異常類,必須是Exception(內(nèi)置類)的子類,
2. Exception類中的只有構(gòu)造方法和toString()可以重寫, 其它都final
三、處理多個異常
自己定義功能類時如果在方法中拋出異常
復(fù)制代碼 代碼如下:

class OpenFileException extends Exception {
function __construct($message = null, $code = 0){
parent::__construct($message, $code);
echo "wwwwwwwwwwwwwww<br>";
}
function open(){
touch("tmp.txt");
$file=fopen("tmp.txt", "r");
return $file;
}
}
class DemoException extends Exception {
function pro(){
echo "處理demo發(fā)生的異常<br>";
}
}
class TestException extends Exception {
function pro(){
echo "這里處理test發(fā)生的異常<br>";
}
}
class HelloException extends Exception {
}
class MyClass {
function openfile(){
$file=@fopen("tmp.txt", "r");
if(!$file)
throw new OpenFileException("文件打開失敗");
}
function demo($num=0){
if($num==1)
throw new DemoException("演示出異常");
}
function test($num=0){
if($num==1)
throw new TestException("測試出錯");
}
function fun($num=0){
if($num==1)
throw new HelloException("###########");
}
}
try{
echo "11111111111111<br>";
$my=new MyClass();
$my->openfile();
$my->demo(0);
$my->test(0);
$my->fun(1);
echo "22222222222222222<br>";
}catch(OpenFileException $e){ //$e =new Exception();
echo $e->getMessage()."<br>";
$file=$e->open();
}catch(DemoException $e){
echo $e->getMessage()."<br>";
$e->pro();
}catch(TestException $e){
echo $e->getMessage()."<br>";
$e->pro();
}catch(Exception $e){
echo $e->getMessage()."<br>";
}
var_dump($file);
echo "444444444444444444444<br>";

相關(guān)文章

最新評論

谷城县| 平潭县| 安仁县| 株洲市| 祁连县| 华宁县| 遵义县| 宁海县| 南昌市| 清苑县| 华宁县| 拉孜县| 沐川县| 乌兰察布市| 民权县| 墨竹工卡县| 寿阳县| 福贡县| 岳西县| 阜阳市| 西青区| 清水县| 南皮县| 盐池县| 内乡县| 湘阴县| 东辽县| 和田市| 姚安县| 徐水县| 桦甸市| 龙岩市| 乌苏市| 洪江市| 中超| 朔州市| 高密市| 洪洞县| 海盐县| 光山县| 吐鲁番市|