探寻PHP脚本不报错的原因

yipeiwu_com5年前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   /* 平滑重启 */

相关文章

Apache2 httpd.conf 中文版

Apache2 httpd.conf 中文版  # # 基于 NCSA 服务的配置文件。 # #这是Apache服务器主要配置...

详解PHP 7.4 中数组延展操作符语法知识点

详解PHP 7.4 中数组延展操作符语法知识点

在数组表达式中对展开操作符(Spread Operator)支持的 RFC 投票是 绝大多数人赞同 将此功能添加到 PHP 7.4。 扩展运算符支持参数解包首先存在于 PHP 5.6...

基于php常用函数总结(数组,字符串,时间,文件操作)

数组:【重点1】implode(分隔,arr) 把数组值数据按指定字符连接起来例如:$arr=array('1','2','3','4');$str=implode('-',$arr);...

在PHP中养成7个面向对象的好习惯

在 PHP 编程早期,PHP 代码在本质上是限于面向过程的。过程代码 的特征在于使用过程构建应用程序块。过程通过允许过程之间的调用提供某种程度的重用。 但是,没有面向对象的语言构造,程序...

PHP JSON出错:Cannot use object of type stdClass as array解决方法

php再调用json_decode从字符串对象生成json对象时,如果使用[]操作符取数据,会得到下面的错误: 复制代码 代码如下: Cannot use object of type...