来自 澳门威尼斯人平台 2020-01-31 05:21 的文章
当前位置: 澳门威尼斯人平台 > 澳门威尼斯人平台 > 正文

PHP错误总结

PHP的错误机制也是非常复杂的,做了几年php,也没有仔细总结过,现在就补上这一课。

Deprecated: Automatically populating $HTTP_RAW_POST_DATA is deprecated and w

澳门威尼斯人平台,PHP编译安装时候出现下列错误,现在总结如下。希望对网友有所帮助。

特别说明:文章的PHP版本使用5.5.32

官方说明:
http://php.net/manual/zh/migration56.deprecated.php

1、make: *** [libphp5.la] Error 1 出现此错误解决办法

PHP的错误级别

首先需要了解php有哪些错误。截至到php5.5,一共有16个错误级别

注意:尝试下面的代码的时候请确保打开error_log:

error_reporting(E_ALL);
ini_set('display_errors', 'On');

论坛讨论:
https://github.com/piwik/piwik/issues/6465

wget ftp://ftp.ntua.gr/pub/linux/scientificlinux/54/i386/updates/security/libtool-ltdl-1.5.22-7.el5_4.i386.rpm

E_ERROR

这种错误是致命错误,会在页面显示Fatal Error, 当出现这种错误的时候,程序就无法继续执行下去了

错误示例:

// Fatal error: Call to undefined function hpinfo() in /tmp/php/index.php on line 5
hpinfo();  //E_ERROR

注意,如果有未被捕获的异常,也是会触发这个级别的。

// Fatal error: Uncaught exception 'Exception' with message 'test exception' in /tmp/php/index.php:5 Stack trace: #0 {main} thrown in /tmp/php/index.php on line 5
throw new Exception("test exception");

解决方案:

  rpm -ivh libtool-ltdl-1.5.22-7.el5_4.i386.rpm

E_WARNING

这种错误只是警告,不会终止脚本,程序还会继续进行,显示的错误信息是Warning。比如include一个不存在的文件。

//Warning: include(a.php): failed to open stream: No such file or directory in /tmp/php/index.php on line 7
//Warning: include(): Failed opening 'a.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in /tmp/php/index.php on line 7
include("a.php"); //E_WARNING

修改php.ini
搜索always_populate_raw_post_data
取消掉分号,当然修改之前请仔细看说明。

  wget ftp://ftp.ntua.gr/pub/linux/scientificlinux/53/i386/updates/security/libtool-ltdl-devel-1.5.22-7.el5_4.i386.rpm

E_NOTICE

这种错误程度更为轻微一些,提示你这个地方不应该这么写。这个也是运行时错误,这个错误的代码可能在其他地方没有问题,只是在当前上下文情况下出现了问题。

比如$b变量不存在,我们把它赋值给另外一个变量

//Notice: Undefined variable: b in /tmp/php/index.php on line 9
$a = $b; //E_NOTICE

   rpm -ivh libtool-ltdl-devel-1.5.22-7.el5_4.i386.rpm

本文由澳门威尼斯人平台发布于澳门威尼斯人平台,转载请注明出处:PHP错误总结

关键词: