目录
例子
首页 后端开发 PHP问题 php.ini怎么配置错误日志

php.ini怎么配置错误日志

Jul 16, 2021 am 09:19 AM
php.ini

php.ini配置错误日志的方法:1、打开php.ini配置文件,修改“display_errors = On”;2、记录到error_log指定的文件中;3、设置“error_reporting”。

php.ini怎么配置错误日志

本文操作环境:Windows7系统、PHP7.1版,DELL G3电脑

php.ini怎么配置错误日志?

php.ini配置--记录PHP错误日志

PHP.ini 中关于错误日志的配置项:

; display_errors
;   Default Value: On
;   Development Value: On
;   Production Value: Off
; display_startup_errors
;   Default Value: Off
;   Development Value: On
;   Production Value: Off
; error_reporting
;   Default Value: E_ALL & ~E_NOTICE
;   Development Value: E_ALL | E_STRICT
;   Production Value: E_ALL & ~E_DEPRECATED
; html_errors
;   Default Value: On
;   Development Value: On
;   Production value: Off
; log_errors
;   Default Value: Off
;   Development Value: On
;   Production Value: On

display_errors = Off

error_reporting = E_ALL & ~E_NOTICE 

log_errors = On

error_log = "e:/wamp/logs/php_error.log"

1.) display_errors = On 
开启状态下,若出现错误,则报错,出现错误提示 
dispaly_errors = Off 
关闭状态下,若出现错误,则提示:服务器错误。但是不会出现错误提示 

错误回显,一般常用语开发模式,但是很多应用在正式环境中也忘记了关闭此选项。错误回显可以暴露出非常多的敏感信息,为攻击者下一步攻击提供便利。上线后推荐关闭此选项。 
2.)log_errors 
在正式环境下用这个就行了,把错误信息记录在日志里。正好可以关闭错误回显。

默认是记录到WEB服务器的日志文件里,比如Apache的error.log文件。 当然也可以记录 error_log 指定的文件中。

3)error_reporting 

error_reporting = E_ALL & ~E_NOTICE 

参考:http://hi.baidu.com/allense7en/item/6eb4a4ab0d596a15a8cfb7b4

以将数字加起来得到想要的错误报告等级。

E_ALL - 所有的错误和警告(不包括 E_STRICT) 
E_ERROR - 致命性的运行时错误 
E_WARNING - 运行时警告(非致命性错误) 
E_PARSE - 编译时解析错误 
E_NOTICE - 运行时提醒(这些经常是你代码中的bug引起的,也可能是有意的行为造成的。) 
E_STRICT - 编码标准化警告,允许PHP建议如何修改代码以确保最佳的互操作性向前兼容性。

E_CORE_ERROR - PHP启动时初始化过程中的致命错误 
E_CORE_WARNING - PHP启动时初始化过程中的警告(非致命性错) 
E_COMPILE_ERROR - 编译时致命性错 
E_COMPILE_WARNING - 编译时警告(非致命性错) 
E_USER_ERROR - 用户自定义的错误消息 
E_USER_WARNING - 用户自定义的警告消息 
E_USER_NOTICE - 用户自定义的提醒消息 如果设置为:E_ALL | E_STRICT,则表示记录所有的错误信息

,可能会导致网站出现一大堆的错误代码;但是对于程序员来说应该说是一件好事,可以把代码优化到最

优; 一些非致命性错误虽然不影响程序的运行,但是会使PHP的负担加重,通常是增加了网站进程(例如

IIS的应用程序池)的负担。

本函数用来配置错误信息回报的等级,参数 level 是一个整数的位遮罩 (bitmask),见下表。

遮罩值 表示名称 
1 E_ERROR 
2 E_WARNING 
4 E_PARSE 
8 E_NOTICE 
16 E_CORE_ERROR 
32 E_CORE_WARNING 
64 E_COMPILE_ERROR 
128 E_COMPILE_WARNING 
256 E_USER_ERROR 
512 E_USER_WARNING 
1024 E_USER_NOTICE 
2047 E_ALL 
2048 E_STRICT

E_NOTICE 表示一般情形不记录,只有程序有错误情形时才用到,例如企图存取一个不存在的变量,或是呼叫 stat() 函数检视不存在的文件。 
E_WARNING 通常都会显示出来,但不会中断程序的执行。这对除错很有效。例如:用有问题的正则表达式呼叫 ereg()。 
E_ERROR 通常会显示出来,亦会中断程序执行。意即用这个遮罩无法追查到内存配置或其它的错误。 
E_PARSE 从语法中解析错误。 
E_CORE_ERROR 类似 E_ERROR,但不包括 PHP 核心造成的错误。 
E_CORE_WARNING 类似 E_WARNING,但不包括 PHP 核心错误警告。
error_reporting( 7 ) = error_reporting( 1+2+4) = error_reporting(E_ERROR | E_WARING | E_PARSE)

例子

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

<?php
//禁用错误报告
error_reporting(0);

//报告运行时错误
error_reporting(E_ERROR | E_WARNING | E_PARSE);

//报告所有错误
error_reporting(E_ALL);
?>
登录后复制

推荐学习:《PHP视频教程

以上是php.ini怎么配置错误日志的详细内容。更多信息请关注PHP中文网其他相关文章!

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

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

php.ini怎么关闭缓存 php.ini怎么关闭缓存 Mar 15, 2021 am 09:35 AM

php.ini关闭缓存的方法:1、找到并打开php.ini配置文件;2、找到“opcache.enable”和“opcache.enable_cli”选项,将其修改为“opcache.enable=0”和“opcache.enable_cli=0”;3、保存修改后的文件即可。

聊聊如何修改php.ini配置文件 聊聊如何修改php.ini配置文件 Mar 28, 2023 pm 05:34 PM

PHP.ini是一个PHP配置文件,它被用于控制PHP在服务器上的表现。此文件被用于设置一些变量的值,以便在运行时控制PHP。这篇文章将会向您展示如何修改PHP.ini配置文件的方式,以便控制PHP在您的服务器上的表现。

【整理总结】常见的PHP.ini提示报错及解决方法 【整理总结】常见的PHP.ini提示报错及解决方法 Mar 20, 2023 pm 04:56 PM

PHP是一种常用的服务器端脚本语言,广泛应用于Web开发领域。然而,在PHP开发过程中,我们经常会遇到各种问题。其中,PHP.ini提示报错是一个常见的问题。

wamp中怎么修改php.ini文件 wamp中怎么修改php.ini文件 Mar 20, 2023 pm 03:33 PM

Wampserver是一个可以在Windows计算机上安装Apache、PHP和MySQL的软件包。使用Wampserver可以轻松地在本地计算机上开发和测试PHP网站。在开发过程中,我们可能需要修改PHP配置文件php.ini。本文将介绍如何在Wampserver中修改php.ini文件。

php.ini文件中怎么更改时区 php.ini文件中怎么更改时区 Mar 22, 2023 pm 03:22 PM

PHP是一种非常流行的服务器端编程语言。在使用PHP开发Web应用程序时,我们有时需要在PHP中设置时区。PHP默认的时区是“UTC(协调世界时)”,这在很多情况下都不是我们想要的时区,因此我们需要在php.ini文件中更改时区设置。本文将介绍如何在php.ini文件中更改时区。

linux php.ini不生效如何解决 linux php.ini不生效如何解决 May 13, 2023 am 09:10 AM

linuxphp.ini不生效的解决办法:1、重新加载php.ini配置文件;2、在打印出的“phpinfo();”中搜索要修改的配置;3、查看“php-fpm.conf”配置文件,检查是否覆盖了php.ini中的配置即可。linuxphp.ini不生效怎么办?在linux环境下修改php.ini不生效问题排查php.ini修改后不生效主要有如下几种原因:1、修改php.ini配置文件后,没有重新加载php.ini配置文件。2、存在多个php.ini配置文件3、php.ini中的配置被其他文件中

php7改php.ini不起作用怎么办 php7改php.ini不起作用怎么办 Nov 07, 2022 am 09:54 AM

php7改php.ini不起作用的解决办法:1、检查配置文件的路径;2、对windows下的“php.ini”进行参数的修改;3、设置“post_max_size”的参数为“upload_max_filesize”的N倍;4、重启apache即可。

php7 php.ini中没有mysql.all如何解决 php7 php.ini中没有mysql.all如何解决 May 28, 2023 am 11:59 AM

PHP7中的迁移问题PHP7是PHP的下一个主要版本,它在性能和安全方面都有巨大的改进,因此很多网站都希望尽快升级到PHP7。然而,升级到PHP7并不总是容易的。由于与之前版本的不兼容性,企业可能需要进行一些修改,通常是在应用代码中和PHP配置文件中做一些调整。如上所述,PHP7中的mysql扩展已经被删除,因此如果你在旧版本的PHP中使用了mysql扩展,那么你需要在迁移到PHP7时进行一些修改。你可以选择将mysql扩展替换为mysqli扩展(mysqli是“MySQLImproved”扩展

See all articles