学堂 学堂 学堂公众号手机端

PHP错误控制运算符怎样写,有何作用呢

lewis 1年前 (2024-04-03) 阅读数 5 #技术
今天就跟大家聊聊有关“PHP错误控制运算符怎样写,有何作用呢”的内容,可能很多人都不太了解,为了让大家认识和更进一步的了解,小编给大家总结了以下内容,希望这篇“PHP错误控制运算符怎样写,有何作用呢”文章能对大家有帮助。



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

如果用set_error_handler()设定了自定义的错误处理函数,仍然会被调用,但是此错误处理函数可以(并且也应该)调用error_reporting(),而该函数在出错语句前有 @ 时将返回 0。

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

<?php
/*Intentionalfileerror*/
$my_file=@file('non_existent_file')or
die("Failedopeningfile:errorwas'$php_errormsg'");

//thisworksforanyexpression,notjustfunctions:
$value=@$cache[$key];
//willnotissueanoticeiftheindex$keydoesn'texist.
?>

Note:@ 运算符只对表达式有效。对新手来说一个简单的规则就是:如果能从某处得到值,就能在它前面加上 @ 运算符。例如,可以把它放在变量,函数和include调用,常量,等等之前。不能把它放在函数或类的定义之前,也不能用于条件结构例如if和foreach等。

Warning

目前的“@”错误控制运算符前缀甚至使导致脚本终止的严重错误的错误报告也失效。这意味着如果在某个不存在或者敲错了字母的函数调用前用了“@”来抑制错误信息,那脚本会没有任何迹象显示原因而死在那里。


现在大家对于PHP错误控制运算符怎样写,有何作用呢的内容应该都有一定的认识了吧,希望这篇能对大家有所帮助。最后,想要了解更多,欢迎关注博信,博信将为大家推送更多相关的文章。
版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门