為什么php需要手動拋出異常?
if (!file_exists($filename)) {
????? throw new Exception('文件不存在');
??? }
類似例子中,需要先判斷$filename是否存在,不存在就拋出異常,這樣還有什么意義?既然我自己都判斷了,那還需要拋出什么異常?完全可以 echo '文件不存在';,這樣就行了,也不會中斷指令流的執行。
以前學的java都可以直接try{}catch(){}把有可能出錯的代碼放在try中,出錯了就自動拋出了,完全不用手動拋出異常
2015-06-23
因為php的異常處理弱爆了,在php里,遇到任何自身錯誤都會觸發一個錯誤,而不是拋出異常,如果想使用異常處理不可預測的問題,是辦不到的,也就是說,php通常是無法自動撲獲有意義的異常的,他把所有不正常的情況都視為錯誤,你想撲獲異常就得使用if...else...結構
2015-12-20
剛看Java的異常處理,突然發現PHP的異常處理弱爆了...
不過異常的一個原因就是講異常處理 和 正常處理分開...就這一點,PHP的異常處理還是有點用處的...
原來php不是世界上最好的語言....
2015-06-23
php只有你自動throw后,才能撲獲異常