欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

探寻PHP脚本不报错的原因

程序员文章站 2023-11-29 13:40:10
那么如果php脚本不报语法错,会是什么原因呢: 1. 一般的集成环境,默认会开启错误报告; 但在linux系统中,使用软件包安装的就不一定了,   此时可以查看php配...

那么如果php脚本不报语法错,会是什么原因呢:

1. 一般的集成环境,默认会开启错误报告; 但在linux系统中,使用软件包安装的就不一定了,

  此时可以查看php配置文件,打开错误报告 =>

复制代码 代码如下:

  display_errors = on      /* php配置文件路径:/uer/local/php/etc/php.ini  */


  注:php脚本中动态设置php.ini配置文件的方法 =>

复制代码 代码如下:

  ini_set('display_errors', 'on'); /* 显示所有错误 */


2. 设置错误报告级别 =>

复制代码 代码如下:

  error_reporting = e_all;   /* 最严格的错误报告级别, 开发阶段可开启 */
  error_reporting = e_all &~ e_notice /* 除了notice以外的错误 */
  error_reporting = e_error | e_parse | e_core_error /* 只考虑致命的运行时错误,新解析错误 和 核心错误 */

  以上三种,推荐中间的。

  注:php脚本中动态设置error_reporting错误报告级别的方法 =>

复制代码 代码如下:

  error_reporting(e_all &~ e_notice);


3. 更改配置文件以后,需要重启服务才能生效 =>

  apache的启动:/usr/local/apache2/bin/apachectl start  /* 推荐 */

     另, 红帽linux专有启动命令:service httpd start

  apache的重启:/usr/local/apache2/bin/apachectl restart

     另,红帽专有启动命令:service httpd restart

  apache的停止:/usr/local/apache2/bin/apachectl stop

     另,红帽专有启动命令:service httpd stop

  nginx的重启:/usr/local/nginx/sbin/nginx -s reload   /* 平滑重启 */