程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 深入淺出講解:php的socket通信

深入淺出講解:php的socket通信

編輯:關於PHP編程

深入淺出講解:php的socket通信


1. php中常見的錯誤類型

1. 語法錯誤
* 1). 少寫分號
* 2). 。 。。。。。

2. 環境錯誤
* 1). php 配置等待

3. 邏輯錯誤
* 1). 想用一個等號,結果使用了兩個等號

2.已定義的錯誤類型

錯誤名 錯誤描述 E_ALL 所有的錯誤和報告 E_ERROR 致命的運行時錯誤,腳本的執行被 E_WARBING 運行時警告(非致命性),腳本的執行不會被暫停 E_PARSE 編譯時解析錯誤 E_NOTICE 運行時提醒 E_STRICT 啟動php對代碼的修改建議,以確保代碼具有最佳的互操作性和向前兼容性 E_DEPRECATED 運行時通知,啟動後將會對在未來版本中可能無法正常工作的代碼給出警告 E_CORE_ERROR 發生於php啟動時初始化過程中的致命錯誤 E_CORE_WARNING 發生於php啟動時初始化過程中的警告錯誤(非致命性) E_COMPILE_ERROR 編譯時致命性錯 E_COMILE_WARNING 編譯時警告(非致命性錯) E_USER_ERROR 用戶產生的出錯消息 E_USER_WARNING 用戶產生的警告消息 E_USER_NOTICE 用戶產生的提醒消息 E_USER_DEPRECATED 用戶產生的警告信息,類似E_DEPRECATED,但是是通過trigger_error函數產生的 E_RECOVERABLE_ERROR 可被捕獲的指明錯誤,她表示可能發生了一個非常危險的錯誤,但是還沒有導致PHP引擎處於不穩定狀態。如果該錯誤沒有被用戶自定義句柄捕獲(參見set_error_handler()),將成為一個E_ERROR,從而腳本會終止運行。

3.php中的錯誤級別

1. Deprecated(不推薦|過時)錯誤
* 1). 最低級的錯誤 比如使用ereg函數, mysql_escape_string
* 2). Deprecated: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead.

2. Notice通知級別的錯誤
* 1). 訪問未定義的變量
* 2). 訪問數組時,$arr[“name”]; 程序首先會執行查找常量name,如果沒有找到則會將name當做字符串處理

3. Warning警告級別的錯誤
* 1). 參數個數不對
* 2). 參數類型不對

4. Fatal error致命級別的錯誤(終止程序繼續執行)
* 1). 調用未定義的函數
* 2). 參數類型不對

5. parse error語法解析錯誤
* 1). 檢查階段沒有通過,其他任何錯誤都不會看到,因為還沒到哪裡,程序還沒解析成功

6. E_USER_相關的錯誤
* 1). 檢查階段沒有通過,其他任何錯誤都不會看到,因為還沒到哪裡,程序還沒解析成功

4. php配置文件中與錯誤相關的選項

選項 描述 error_reporting 設置錯誤報告的級別 display_error 是否顯示錯誤 log_errors 設置是否將產生的錯誤信息記錄到日志或者error_log error_log 設置錯誤日志的保存文件 log_errors_max_len 設置log_errors的最大字節數 ignore_repeated_errors 是否忽略重復的錯誤信息 ignore_repeated_source 是否忽略重復的消息來源 track_errors 如果開啟此選項,最後一個錯誤將永遠保存在$php_errormsg

5. 如何設置錯誤級別

1. 在配置文件中修改error_reporting 的值

2. 在代碼中通過error_reporting函數設置
* 1.error_reporting(0); 不顯示錯誤,除了E_PARSE
* 2.error_reporting(-1) | error_reporting(E_ALL) 顯示所有錯誤

3. 使用ini_set(‘error_reporting’, 0)函數運行時設置

6. 抑制錯誤輸出符號@

1.@settype()

7.通過trigger_error出發PHP錯誤

觸發錯誤的功能不只限於php解析器,還可以通過trigger_error()函數觸發錯誤。 trigger_error(‘錯誤信息’, 自定義錯誤,如:(E_USER_NOTICE) ) trigger_error(‘自定義錯誤信息’, E_USER_NOTICE); 該函數不會打斷程序繼續執行。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved