首页 >后端开发 >PHP问题 >你使用过php中@这个运算符吗?

你使用过php中@这个运算符吗?

醉折花枝作酒筹
醉折花枝作酒筹原创
2021-08-06 17:22:392210浏览

今天我们介绍一个运算符,可能与之前的运算符有些许不同,但是这个运算符十分有用,有需要的可以参考参考。

我们介绍的是错误控制运算符,在介绍这个运算符用法之前,我们来看一个这个运算符。

错误控制运算符,计算机语言,是php 支持一个运算符@。当将其放置在一个 php 表达式之前,该表达式可能产生的任何错误信息都被忽略掉 。

如果激活了track_errors特性,表达式所产生的任何错误信息都被存放在变量 $php_errormsg 中。此变量在每次出错时都会被覆盖,所以如果想用它的话就要尽早检查。

我们已经知道了什么叫做错误控制运算符,那么来看一下如何使用这个运算符吧,我们先来看一个小例子。

<?php
$my_file = @file(&#39;grand.php&#39;) or die(&#39;文件格式发生错误!&#39;);
$value = @ $cache[$key];
?>

这个小例子的结果是什么?大家可以猜测一下。好了,我们这就来公布结果。

QI8BX8]@1ON(86TI4A39(ZA.png

应该有很多人都猜对了吧,太棒了,给自己鼓鼓掌。这个例子输出的结果好像是die后面的内容哦,那这个运算符是干什么的呢?如何使用呢?

我们来看看这个运算运算符的用法吧。

<?php
$my_file = @file (&#39;不存在的文件名称&#39;) or
    die ("打开文件失败:错误为&#39;" . error_get_last()[&#39;message&#39;] . "&#39;");
    //适用于任何表达式,而不仅仅是函数:
    
$value = @$cache[$key];
//如果索引$key不存在,则不会发出通知。
?>

这就是这个运算符的用法了,不过我们来看一些注意事项或是其他的吧。

对于新手来说,一个简单的规则是:如果你能从某处获得一个值,你可以在其中添加@运算符。例如,可以将其放在变量、函数和include调用、常量等之前。它不能放在函数或类的定义之前,也不能用于ifforeach等条件结构中。

同时,我们必须要注意的是:

当前“@”错误控制运算符前缀甚至会使导致脚本终止的严重错误的错误报告失效。这意味着,如果在不存在或键入错误字母的函数调用之前使用“@”来抑制错误消息,脚本将不会显示原因的迹象。

就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程

以上是你使用过php中@这个运算符吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn