首页 > 编程语言 >PHP如何不显示 notice 和 warning警告信息

PHP如何不显示 notice 和 warning警告信息

时间:2023-04-27 11:44:58浏览次数:34  
标签:notice php 错误 ERROR warning error 警告 PHP

检查语法与逻辑的时候没有发现问题,但是页面报出了警告Warning提示,这不仅影响到体验也是属于bug的一种形式,那么该如何设置去掉?

php不显示警告的方法:首先找到对应的配置文件【php.ini】;然后查找【display_errors】属性;最后就将其修改为Off,并保存重启即可。

方法一

 1、首先确定好你项目中PHP的版本,然后找到对应的配置文件php.ini,Windows下按Ctrl+F查找display_errors这个属性,若原来设置的值是On,

      那么就将其修改为Off,然后保存,并且重启服务器即可去掉Warning提示。

2、若设置了display_errors属性为Off之后页面还是有警告,那么打开你的phpinfo(),查看配置信息。Ctrl+F查找到display_errors属性,

    若Local Value与Master Value的值不一致,那么就说明你还在其他地方设置了局域值,影响了全局属性。

3、如果不起作用 查看  php-fpm.conf 里的设置 

打开php-fpm.conf,找到:

<value name="php_defines">

       </value><value name="sendmail_path">/usr/sbin/sendmail -t -i</value>

<value name="display_errors">0</value>

将其中的值从1改为0就可以了,重启wamp再试。

4、如果还不行 查找看 你的项目中全局是否有 display_errors 属性,一定是有其他配置文件内额外设置了此值。

     找到  display_errors属性的值设置为 Off,重启wamp再试。

 方法二

使用 修改 报错的级别 方式

配置文件【php.ini】;然后查找【error_reporting】属性

参照的报错级别如下:

定义和用法:

error_reporting() 设置 PHP 的报错级别并返回当前级别。

函数语法:

error_reporting(report_level)

如果参数 level 未指定,当前报错级别将被返回。下面几项是 level 可能的值:

值 常量 描述

1 E_ERROR 致命的运行错误。错误无法恢复,暂停执行脚本。

2 E_WARNING 运行时警告(非致命性错误)。非致命的运行错误,脚本执行不会停止。

4 E_PARSE 编译时解析错误。解析错误只由分析器产生。

8 E_NOTICE 运行时提醒(这些经常是你代码中的bug引起的,也可能是有意的行为造成的。)

16 E_CORE_ERROR PHP启动时初始化过程中的致命错误。

32 E_CORE_WARNING PHP启动时初始化过程中的警告(非致命性错)。

64 E_COMPILE_ERROR 编译时致命性错。这就像由Zend脚本引擎生成了一个E_ERROR。

128 E_COMPILE_WARNING 编译时警告(非致命性错)。这就像由Zend脚本引擎生成了一个E_WARNING警告。

256 E_USER_ERROR 用户自定义的错误消息。这就像由使用PHP函数trigger_error(程序员设置E_ERROR)

512 E_USER_WARNING 用户自定义的警告消息。这就像由使用PHP函数trigger_error(程序员设定的一个E_WARNING警告)

1024 E_USER_NOTICE 用户自定义的提醒消息。这就像一个由使用PHP函数trigger_error(程序员一个E_NOTICE集)

2048 E_STRICT 编码标准化警告。允许PHP建议如何修改代码以确保最佳的互操作性向前兼容性。

4096 E_RECOVERABLE_ERROR 开捕致命错误。这就像一个E_ERROR,但可以通过用户定义的处理捕获(又见set_error_handler())

8191 E_ALL 所有的错误和警告(不包括 E_STRICT) (E_STRICT will be part of E_ALL as of PHP 6.0)

例子:

在 php 文件的开头 写入
任意数目的以上选项都可以用“或”来连接(用 OR 或 |),这样可以报告所有需要的各级别错误。
例如,下面的代码关闭了用户自定义的错误和警告,执行了某些操作,然后恢复到原始的报错级别:

<?php
    //禁用错误报告
    error_reporting(0);
 
    //报告运行时错误
    error_reporting(E_ERROR | E_WARNING | E_PARSE);
 
    //报告所有错误
    error_reporting(E_ALL);
?>

 

标签:notice,php,错误,ERROR,warning,error,警告,PHP
From: https://www.cnblogs.com/hailexuexi/p/17358513.html

相关文章

  • php 二维数组重组成父与子关系
    functionbuildTree(array$flat,$pidKey='pid',$idKey='id',$childrenKey='children'){$grouped=[];foreach($flatas$sub){$grouped[$sub[$pidKey]][]=$sub;}$fnBuilder......
  • php升级 编译安装php7 支持openeuler欧拉
    php版本下载包查询:https://www.php.net/releases/ yum-yinstallcmakelibxml2libxml2-developensslopenssl-develcurl-devellibjpeg-devellibpng-develfreetype-devellibziplibzip-devellibsodiumsqlitesqlite-develonigurumaoniguruma-devellibwebp-devel......
  • golang -WARNING: undefined behavior - version of Delve is too old for Go version
    1.背景启动警告 这是idea内置的dlv.exe调试器版本太低了2.解决安装最新的goinstallgithub.com/go-delve/delve/cmd/dlv@latest安装成功后,在golang的安装位置多出来个新的dlv.exe  idea打开配置 写上自己的地址即可下面是我的 重启idea生效......
  • 解决Python中报错RequestsDependencyWarning: urllib3 (1.26.9) or chardet (5.1.0)/c
      在运行requests包时,出现了以下报错信息:RequestsDependencyWarning:urllib3(1.26.9)orchardet(5.1.0)/charset_normalizer(2.0.12)doesn'tmatchasupportedversion!warnings.warn("urllib3({})orchardet({})/charset_normalizer({})doesn'tmatchasu......
  • 记php调用chatgpt接口
    $openai_api_key='your_openai_api_key_here';$engine='davinci';//ChatGPT中的AI模型名称$prompt='Hello,canyouhelpme?';//ChatGPT中的提示信息//构造请求数据$data=array('model'=>$engine,'prompt&#......
  • php 版本号对比,1.0.5和1.15.0
    $version1='1.0.5';$version2='1.15.0';//自定义比较函数functioncompare_versions($v1,$v2){$ver1=explode('.',$v1);$ver2=explode('.',$v2);//将每个版本号中的字符串转换为整数$ver1=array_map('intval&......
  • 编译部署LNMP-php8.1.18版本
    由于mysql编译会非常耗费资源,故咱们这里不做介绍,只介绍nginx的编译、php的编译以及nginx和php的联动,至于mysql如何接入,需要看具体业务,在LNMP中mysql是相对独立的,不需要特别的配置编译安装nginx新建www用户groupaddwwwuseradd-s/sbin/nologin-gwwwwww安装必要依赖yum......
  • PHP 中的默认(缺省)参数的函数
    前言在PHP中有一种函数,在调用的时候某些参数是可以缺省的,也就是说,在调用函数的时候可以传值,也可以不传值,如果在调用函数的时候传入具体的值就会使用传入的值,否则就会使用默认的值,默认的值在函数定义的时候就已经设置好,默认(缺省)参数的函数格式如下所示:mixedfunName(stringname,[,str......
  • PHP中的引用参数的函数
    前言php的引用(就是在变量或者函数、对象等前面加上&符号)在PHP中引用的意思是:不同的名字访问同一个变量内容。与C语言中的指针是有差别的。C语言中的指针里面存储的是变量的内容在内存中存放的地址,函数的引用返回多用在对象中引用参数的函数格式说明如下代码所示:voidfunName(array......
  • php按照首字母排序,PHP获取汉字首字母并分组排序
    没问题的直接上代码classCharacter{publicfunctiongroupByInitials(array$data,$targetKey='name'){$data=array_map(function($item)use($targetKey){returnarray_merge($item,['initials'=>$thi......