首頁  >  文章  >  後端開發  >  PHP中的錯誤處理與異常處理

PHP中的錯誤處理與異常處理

墨辰丷
墨辰丷原創
2018-05-26 11:09:511027瀏覽

這篇文章主要介紹PHP中的錯誤處理和異常處理,有興趣的朋友參考下,希望對大家有幫助。

錯誤處理:
    
    1. 文法錯誤
    2. 執行時的錯誤
   

 

錯誤報告:
        
        錯誤E_ERROR
        警告E_WARNING
        注意E_NOTICE

開發階段:開發時輸出所有的錯誤報告,有利於我們進行調試

運行階段:不要讓程式輸出任何一種錯誤報告

將錯誤報告寫入日誌中

一.   指定錯誤回報error_reporting=E_ALL(在php.inn)

#二.關閉錯誤輸出display_errors=off(在php.ini中)

#三.   開啟錯誤日誌的功能log_errors=on(在php.ini中)

1. 預設如果不指定錯誤日誌位置,則預設寫入web伺服器的日誌中

2. 為error_log選項指定一個檔名,這個檔名就是錯誤日誌

3. 寫入到作業系統日誌中error_log=syslog


#

<?php
//注意和警告都不会终止程序的运行,但是错误会终止程序的运行

/*
错误E_ERROR
警告E_WARNING
注意E_NOTICE
*/
//所有的错误都输出除了注意
error_reporting(E_ALL & ~E_NOTICE);

//设置配置文件的值(临时)
//ini_set("upload_max_filesize", 2000000000);

//得到配置文件的值
//ini_get("upload_max_filesize");

//关闭错误报告的显示,一般在运行阶段使用
ini_set("display_errors", "off");
//将错误报告写入日志中
ini_set("log_errors", "on");
//日志的目录
ini_set("error_log", "D:/error.log");
gettype($var);  //注意

gettype();    //警告

//getype();    //错误,程序终止

echo "############<br>";
?>


##例外處理:意外,是在程式運作過程中發生的意料之外的事,使用異常改變腳本正常流程

 PHP5中的一個新的重要特性

    try{


    }catch(例外物件){

    }

#1.  若try中程式碼沒有問題,則將try中程式碼執行完成後就到catch後執行

2.  如果try中程式碼有例外發生,則拋出一個例外物件(使用throw),拋出給了catch中的參數,則在try中出現異常代碼後的內容就不會執行,直接跳到catch中去執行,catch中執行完成,再繼續向下執行

<?php
try{
  echo "11111111<br>";
  $file=@fopen("./hello.txt","r");
  if(!$file){
    throw new Exception("文件打开失败");
    
  }
  echo "2222222222<br>";
}catch(Exception $e){
  echo "3333333<br>";
  echo $e->getMessage()."<br>";
  touch("hello.txt");
  $file=@fopen("./hello.txt","r");
}
echo "4444444<br>";
?>


以上就是本文的全部內容,希望對大家的學習有幫助。


相關推薦:

php中的

異常與錯誤解析

PHP實作

異常處理類別的方法

#php封裝一個

異常的處理類別的方法


#

以上是PHP中的錯誤處理與異常處理的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn