程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php中at @符號的作用使用說明

php中at @符號的作用使用說明

編輯:關於PHP編程

相信不少和我一樣的php新人在學習PHP的時候和我一樣,都郁悶過這個問題。@(at)這個記號到底是做什麼的呢?


一次,下載別人的源碼來看,看到無數@記號,開始以為是注釋;後來發現@後面的語句也是會執行的。納悶了,這個記號究竟是做什麼的呢.....

隨著學習的不斷深入,總算是明白了。這個記號的作用有點類似於asp中的忽略錯誤"on error resume next "。他們的作用是一樣的,當php解釋器遇到@開頭的語句時候,無論本行的語句是否執行成功,都會繼續執行後續的語句,而且不會報錯。但特別注意,@(at)記號只對當前行起作用哦。

 
 
希望關於@(at)的問題就在這打住把。
 

eg.下面這句話肯定報錯

報錯代碼

 代碼如下 復制代碼

<?php  
$sql = mysql_connect(*);  
?>  

 

 

然而,如果我們加上@(at)記號,就不會報錯了,而且繼續執行。

不報錯代碼

 代碼如下 復制代碼

<?php   
@$sql = mysql_connect(*);  
echo "我一直在執行";  
?>  


繼續執行下邊的代碼。

 代碼如下 復制代碼

 @$page=$_GET['page']?intval($_GET['page']):1;

這句是從URL中獲取page關鍵字的值,比如"index.php?page=5",則$page就會取到5。

但是如果有error,比如"index.php"後沒有page關鍵字了,如果去取$_GET['page']不存在就會報錯,這時有@就可以忽視這個小錯誤了。

又比如:

 代碼如下 復制代碼

 $conn = mysqli_conncet("q","w","e","r");

這樣會輸入錯誤信息,關於連接數據庫方面的。

 代碼如下 復制代碼

 @$conn = mysqli_conncet("q","w","e","r");

如果$conn前面加@的話就可以不讓他輸出錯誤信息了。

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