程序员人生 网站导航

php中at @符号的作用使用说明

栏目:php教程时间:2013-12-27 23:18:43

相信不少和我一样的php新人在学习PHP的时候和我一样,都郁闷过这个问题.@(at)这个记号到底是做什么的呢?

一次,下载别人的源码来看,看到无数@记号,开始以为是注释;后来发现@后面的语句也是会执行的.纳闷了,这个记号究竟是做什么的呢.....

随着学习的不断深入,总算是明白了.这个记号的作用有点类似于asp中的忽略错误"on error resume next ".他们的作用是一样的,当php解释器遇到@开头的语句时候,无论本行的语句是否执行成功,都会继续执行后续的语句,而且不会报错.但特别注意,@(at)记号只对当前行起作用哦,希望关于@(at)的问题就在这打住把,eg.下面这句话肯定报错.

报错代码实例如下:

  1. <?php    
  2.  
  3. $sql = mysql_connect(*);    
  4. ?>   

然而,如果我们加上@(at)记号,就不会报错了,而且继续执行.

不报错实例代码如下:

  1. <?php     
  2.  
  3. @$sql = mysql_connect(*);    
  4. echo "我一直在执行";    
  5. ?>   

继续执行下边的代码.

实例代码如下:

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

这句是从URL中获取page关键字的值,比如"index.php?page=5",则$page就会取到5.但是如果有error,比如"index.php"后没有page关键字了,如果去取$_GET['page']不存在就会报错,这时有@就可以忽视这个小错误了.

实例代码如下:

  1. $conn = mysqli_conncet("q","w","e","r"); 
这样会输入错误信息,关于连接数据库方面的.

实例代码如下:

  1. @$conn = mysqli_conncet("q","w","e","r"); 
如果$conn前面加@的话就可以不让他输出错误信息了.
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐