本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。php 怎么抑制报错?利用@来抑制错误在php中,可以使用@运算符来抑制单个错误。例如,如果不希望PHP报告它不包括某个文件,则可以编写如下代码:@include (
本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。
php 怎么抑制报错?
利用@来抑制错误
在php中,可以使用@运算符来抑制单个错误。例如,如果不希望PHP报告它不包括某个文件,则可以编写如下代码:
@include ('config.inc.php');
或者如果不希望看到“除以0”错误:
$x = 8;
$y = 0;
$num = @($x/$y);
像函数调用或数学运算一样,@符号只能处理表达式。不能在条件语句、循环语句、函数定义等之前使用@符号。
一条经验法则是,我建议将@符号用于那些执行失败时不会影响脚本整体功能的函数。或者,在你自己可以更优雅地处理PHP的错误时可以抑制错误(本章后面将讨论这个主题)。
一些开源软件中使用到@抑制错误的部分代码:
//code from phpbb3(common.php)
// If we are on PHP >= 6.0.0 we do not need some code
if (version_compare(PHP_VERSION, '6.0.0-dev', '>='))
{
define('STRIP', false);
}
else
{
@set_magic_quotes_runtime(0);
// Be paranoid with passed vars
if (@ini_get('reGISter_globals') == '1' || strtolower(@ini_get('register_globals')) == 'on' || !function_exists('ini_get'))
{
deregister_globals();
}
define('STRIP', (get_magic_quotes_gpc()) ? true : false);
}
//code from phpbb3(style.php)
$dir = @opendir("{$phpbb_root_path}styles/{$theme['theme_path']}/theme");
//code from phpbb3(adm/index.php)
if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !@is_writable($phpbb_root_path . $cfg_array[$config_name]))
{
$error[] = sprintf($user->lang['DIRECTORY_NOT_WRITABLE'], $cfg_array[$config_name]);
}
//code from phpbb3(functions.php)
if (($fh = @fopen('/dev/urandom', 'rb')))
{
$random = fread($fh, $count);
fclose($fh);
}
以上就是php 怎么抑制报错的详细内容,更多请关注编程网其它相关文章!
--结束END--
本文标题: php 怎么抑制报错
本文链接: https://lsjlt.com/news/173148.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0