PHP中最低级别的错误类型总结

admin3年前PHP教程52

序言:php错误就是会使脚本运行不正常的情况。

php的错误有很多种,包括warning、notice、deprecated、fetal error等。其中notice不叫通知,而叫通知级别的错误,warning也不叫警告,而叫警告级别的错误。

错误大致分为下面几个类型

deprecated是最低级别的错误,表示“不推荐,不建议”。比如PHP5中使用的ereg系列的正则匹配函数就会报此类错误。这种错误一般由于使用不推荐的、过时的函数或语法造成的。其虽不影响PHP正常流程,但一般情况下建议修正。其次是notice。这种错误一般是语法中存在不当的地方。如使用变量但是未定义就会报此错。最常见的是在数组索引是字符时没有加引号,PHP就视为一个常量,先查找常量表,找不到再视为变量。虽然PHP是脚本语言,语法要求不严,但是仍然建议对变量进行初始化。这种错误不影响PHP正常流程。warning是级别比较高的错误,在语法中出现很不恰当的情况时才会报此错误,比如函数参数不匹配。这种级别的错误会导致得不到预期结果,需要修改代码。更高级别的错误是fetal error。这是致命错误,直接导致PHP进程终结,后面的代码不再执行。这种问题非改不可高级别的错误是语法解析错误prase error。上面提到的错误都属于PHP代码运行期间错误,而语法解析错误属于语法检查阶段错误,这将导致PHP代码无法通过语法检查。

这里只是列举了最常见的几个,php手册一共有16个级别的错误。

?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
$date = date('Y-m-d');;
if(ereg("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})",$date,$regs)){
echo $regs[1]."-".$regs[2]."-".$regs[3];
}else{
echo "没有匹配到";
}
//Deprecated(在php5版本),Fatal error(在php7版本)
 
if($i > 2020){
echo '$i没有初始化!!!',PHP_EOL;
}
//Notice
 
$arr = array('arr'=>1,2,3);
echo $arr[arr];
//Warning
 
$res = array_sum($arr,1);
//Warning
 
echo fun();
//Fatal error
 
echo "最高级别错误';
//Parse error






上面的代码演示了php常见的几个错误级别,如果没有输出完整的话,可以看看php.ini配置文件看看是否如下设置

?

1
2
error_reporting=E_ALL | E_STRICT
display_errors=On






其中的error_reporting是指定错误级别,display_errors就不用说了。

到此这篇关于PHP中最低级别的错误类型总结的文章就介绍到这了,更多相关PHP中最低级别的错误类型有哪些内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:php/php-ask-486924

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

详细分析PHP7与PHP5区别

1、php标量类型和返回类型声明#主要分为两种模式,强制性模式和严格模式declare(strict_types=1)#1表示严格类型校验模式,作用于函数调用和返回语句;0表示弱类型校验模式。2、NU...

php安全攻防世界unserialize函数反序列化示例详解

目录步骤总结 步骤首先打开题目,发现给了一段源码:分析源码,发现类里面有三个魔术方法:__construct():构造函数,对类的变量进行初始化,创建时自动调用,用得到的参数覆盖$file_...

php头编码实例设置方法及代码

在PHP中可以通过在PHP文件头部添加“header("Content-type: text/html; charset=utf-8");”语句来设置编码。...

美国高防服务器租用选择的方法

美国高防服务器租用选择的方法?选择适合的美国高防服务器租用服务商需要考虑以下几个因素:信誉度和口碑:选择口碑良好、信誉度高的服务商,可以避免一些不必要的风险和麻烦。可以通过查看客户评价、咨询其他用户等...

php之使用docker运行workerman案例讲解

介绍在docker上部署gatawayWorker项目,项目中使用到mysql,redis安装 mysql拉取镜像docker pull mysql:5.7运行容器docker run  -...

7款本地PHP服务器环境搭建工具推荐

通常在开发PHP程序时,需要用到服务器环境来调试自己的页面。有时候仅仅是为了学习PHP程序开发,如果是出于这样的理由去购买一个空间或者服务器是完全没必要的。本文推荐7款目前主流的PHP环境搭建工具,可...