熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> PHP編程 >> 正文

PHP5中的異常處理詳解[2]

2013-11-15 12:43:01  來源: PHP編程 

   重拋異常給上層

    〈?php
    class FileExistsException extends Exception{} //用於處理文件不存在異常的類
    class FileOpenException extends Exception{} //用於處理文件不可讀異常的類

    $path = D:\\\\intxt;

    try
    {
    file_open($path);
    }
    catch(FileExistsException $e) //如果產生FileExistsException異常則提示用戶確認文件位置
    {
    echo 程序在運行過程中發生了異常$e〉getMessage()\\n;
    echo 請確認文件位置;
    }
    catch(FileOpenException $e) //如果產生FileOpenException異常則提示用戶確認文件的可讀性
    {
    echo 程序在運行過程中發生了異常$e〉getMessage()\\n;
    echo 請確認文件的可讀性;
    }
    catch(Exception $e)
    {
    echo [未知異常];
    echo 異常信息$e〉getMessage()\\n; //返回用戶自定義的異常信息
    echo 異常代碼$e〉getCode()\\n; //返回用戶自定義的異常代碼
    echo 文件名$e〉getFile()\\n; //返回發生異常的PHP程序文件名
    echo 異常代碼所在行$e〉getLine()\\n; //返回發生異常的代碼所在行的行號
    echo 傳遞路線;
    print_r($e〉getTrace()); //以數組形式返回跟蹤異常每一步傳遞的路線
    echo $e〉getTraceAsString(); //返回格式化成字符串的getTrace函數信息
    }

    function file_open($path)
    {
    try
    {
    if(!file_exists($path))
    {
    throw new FileExistsException(文件無法找到 );
    }

    if(!fopen($path r))
    {
    throw new FileOpenException(文件無法打開 );
    }
    }
    catch(Exception $e) //捕獲異常
    {
    echo file_open函數在運行過程中出現異常;
    throw $e; //重擲異常
    }
    }
    ?〉


From:http://tw.wingwit.com/Article/program/PHP/201311/21472.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.