关于php中@符

来源:互联网 发布:木桶原理与系统优化 编辑:程序博客网 时间:2024/05/16 23:39

1.php中@符又叫错误抑制符,也就是用来屏蔽错误的。

2.举例如下:

function db_connect()//连接数据库 

@$db =mysql_connect('localhost','root','test'); 

//$db =@mysql_connect('localhost','root','test'); //这两种都是一样的
if(!$db) 
throw new Exception('连接数据库失败!请重试!'); 
mysql_select_db('book'); 
return $db; 

像这里本来mysql已经被弃用了,如果你不加@符,会报以下错误:

mysql版本已经被弃用


当然报这个错误不影响你功能实现,但是如果你用户名或密码输错了匹配不上,一样是可以屏蔽的,

还有像:

<?

$users = array('apple', 'pear');
$num = @array_push($users, 'john',zz);

参数zz没定义常量,那就是字符串,但是又没打引号会发生解析错误。这里用@符一样可以屏蔽掉。

3.总的来说:@只是掩耳盗铃的做法,它只是隐藏了错误,但没有解决错误。一般是因一个小错误而中止程序执行,

如果觉得那样不好,就可以在出错的前面加个@符,那样程序就可以继续运行了。

原创粉丝点击