PHP中@符号的用途是什么?如何使用?

at符号(@)在PHP中用作错误控制运算符。当表达式前面带有@符号时, 该表达式可能生成的错误消息将被忽略。如果启用track_errors功能, 则由表达式生成的错误消息并将其保存在变量中$ php_errormsg。该变量将在每个错误时被覆盖。

程序1:

<?php
  
//File error 
$file_name = @file ( 'non_existent_file' ) or
     die ( "Failed in opening the file: error: '$errormsg'" );
  
//It is used for expression
$value = @ $cache [ $key ];
  
//It will not display notice if the index $key doesn't exist.
  
?>

运行时错误:

PHP Notice:  Undefined variable: errormsg in /home/fe74424b34d1adf15aa38a0746a79bed.php on line 5

输出如下:

Failed in opening the file: error: ''

程序2:

<?php
  
//Statement 1
$result = $hello [ '123' ]
  
//Statement 2
$result = @ $hello [ '123' ]
?>

它将仅执行语句1并显示通知消息

PHP Notice:  Undefined variable: hello.

注意:@的使用是非常糟糕的编程习惯, 因为它不会使错误消失, 只会将它们隐藏起来, 并且使调试变得更加糟糕, 因为我们看不到代码的实际错误。

参考文献: 错误控制运算符


来源:

https://www.srcmini02.com/69553.html

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?