【拓展閱讀】PHP中@的祕密 @是可以屏蔽函數執行過程中遇到問題而產生的一些錯誤、警告信息,這樣用戶就看不到程序的出錯信息。這樣除了用戶界面會友好一些外,更重要的是安全性,因爲屏蔽了出錯文件的路徑等信息。 for($i=0;$i<$to;$i++){ $result=fsockopen($target,$i,$errno,$errstr,); if(!$result){ echo "Port $i Closed...".'<br>'; }else{ echo "Socket open at port:$i".'<br>'; } } 顯示結果: 1 2 3 4 5 6 7 8 fsockopen在執行的過程中會產生連接超時的警告,如果不在這個函數前加@,輸出結果就會報錯。 如下圖所示,錯誤信息會列出完整的路徑和出錯行,這是相當危險的!在看看在fsockopen()函數前加上@…那麼警告信息就被屏蔽了: