回答php 怎么抑制报错

 所属分类:php教程

 浏览:73次-  评论: 0次-  更新时间:2022-11-22
描述:更多教程资料进入php教程获得。 php抑制报错的方法:1、打开相应的php文件;2、使用@运算符来抑制单个错误,抑制语法如“@include ('c...
更多教程资料进入php教程获得。

php抑制报错的方法:1、打开相应的php文件;2、使用@运算符来抑制单个错误,抑制语法如“@include ('config.inc.php');”;3、将@符号用于那些执行失败时不会影响脚本整体功能的函数。

php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用

本教程操作环境: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', '>='))  
{  
 /** 
 * @ignore 
 */  
 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视频教程》

以上就是php 怎么抑制报错的详细内容,更多请关注zzsucai.com其它相关文章!

 标签: php,
积分说明:注册即送10金币,每日签到可获得更多金币,成为VIP会员可免金币下载! 充值积分充值会员更多说明»

讨论这个素材(0)回答他人问题或分享使用心得奖励金币

〒_〒 居然一个评论都没有……

表情  文明上网,理性发言!