php语法检查的方法总结


Posted in PHP onJanuary 21, 2019

我们可以使用lint检查

用lint静态检查。

静态是一种只检查语法描述方法而不执行程序的方法。

此时使用lint命令。

※php_check_syntax这个语法检查函数已经被废止,所以不能使用。

然后准备实际出现错误的php文件。

lint_test.php

<?php
echo "error"

它只是一个在屏幕上显示error的代码。

将lint_test.php移动到某个目录并发出以下命令。

php -l lint_test.php

执行结果

PHP Parse error: syntax error, unexpected end of file, expecting ',' or ';' in lint_test.php on line 2 Parse error: syntax error, unexpected end of file, expecting ',' or ';' in lint_test.php on line 2Errors parsing lint_test.php

syntax error=输出语法错误指示。

它还返回错误行数为line 2。

因为有unexpected end of file,是第2行没有“;”是原因。

那么,修改lint_test.php,再次执行lint命令。

<?php
echo "error";

执行结果为:

No syntax errors detected in lint_test.php

显示没有语法错误。

使用xdebug动态检查语法错误

首先,启用xdebug。

①从下面的官方站点下载xdebug,并记下下载的.dll文件所在的本地环境的路径。

https://xdebug.org/download.php

② 将以下内容添加到php.ini中。

zend_extension = ①中记录的路径

②重启Web服务器(Apache等)

这样就完成了设置。

使用xdebug检查错误

我们运行上述使用的lint_test.php。

lint_test.php

<?php
echo "error"

有一个错误,因为最后没有分号。

内容与执行lint时的内容相同,但附加了一些装饰以便于查看。

与lint的最大区别在于执行代码后出现的错误,因此可以说由于动态检查而出现错误。

PHP 相关文章推荐
如何将一个表单同时提交到两个地方处理
Oct 09 PHP
PHP下打开URL地址的几种方法小结
May 16 PHP
SESSION信息保存在哪个文件目录下以及能够用来保存什么类型的数据
Jun 17 PHP
header跳转和include包含问题详解
Sep 08 PHP
PHP不用第三变量交换2个变量的值的解决方法
Jun 02 PHP
解析用PHP实现var_export的详细介绍
Jun 20 PHP
php教程之phpize使用方法
Feb 12 PHP
php实现在限定区域里自动调整字体大小的类实例
Apr 02 PHP
Yii2隐藏frontend/web和backend/web的方法
Dec 12 PHP
Zend Framework常用校验器详解
Dec 09 PHP
PHP SFTP实现上传下载功能
Jul 26 PHP
PHP生成加减算法方式的验证码实例
Mar 12 PHP
PHP删除字符串中非字母数字字符方法总结
Jan 20 #PHP
PHP Laravel中的Trait使用方法
Jan 20 #PHP
PHP合并两个或多个数组的方法
Jan 20 #PHP
实例讲解通过​PHP创建数据库
Jan 20 #PHP
php中的explode()函数实例介绍
Jan 18 #PHP
thinkPHP框架中layer.js的封装与使用方法示例
Jan 18 #PHP
PHP内置函数生成随机数实例
Jan 18 #PHP
You might like
php中mt_rand()随机数函数用法
2014/11/24 PHP
php在数据库抽象层简单使用PDO的方法
2015/11/03 PHP
在WordPress中获取数据库字段内容和添加主题设置菜单
2016/01/11 PHP
详解PHP的Laravel框架中Eloquent对象关系映射使用
2016/02/26 PHP
使用Zttp简化Guzzle 调用
2017/07/02 PHP
laravel实现查询最后执行的一条sql语句的方法
2019/10/09 PHP
php 下 html5 XHR2 + FormData + File API 上传文件操作实例分析
2020/02/28 PHP
JQuery 常用操作代码
2010/03/14 Javascript
JS运行耗时操作的延时显示方法
2010/11/19 Javascript
javascript的字符串按引用复制和传递,按值来比较介绍与应用
2012/12/28 Javascript
jQuery 遍历- 关于closest() 的方法介绍以及与parents()的方法区别分析
2013/04/26 Javascript
js中apply方法的使用详细解析
2013/11/04 Javascript
弹出窗口并且此窗口带有半透明的遮罩层效果
2014/03/13 Javascript
javascript中slice(),splice(),split(),substring(),substr()使用方法
2015/03/13 Javascript
jquery关于事件冒泡和事件委托的技巧及阻止与允许事件冒泡的三种实现方法
2015/11/27 Javascript
JavaScript中Promise的使用详解
2017/02/26 Javascript
分析javascript中9 个常见错误阻碍你进步
2017/09/18 Javascript
js核心基础之闭包的应用实例分析
2019/05/11 Javascript
基于jquery ajax的多文件上传进度条过程解析
2019/09/11 jQuery
Python的消息队列包SnakeMQ使用初探
2016/06/29 Python
深入理解Python单元测试unittest的使用示例
2017/11/18 Python
python实现简单淘宝秒杀功能
2018/05/03 Python
python中ASCII码字符与int之间的转换方法
2018/07/09 Python
详解python持久化文件读写
2019/04/06 Python
python3 批量获取对应端口服务的实例
2019/07/25 Python
Python打开文件、文件读写操作、with方式、文件常用函数实例分析
2020/01/07 Python
Django框架实现在线考试系统的示例代码
2020/11/30 Python
请写出一段Python代码实现删除一个list里面的重复元素
2015/12/29 面试题
自主招生自荐信格式
2013/12/03 职场文书
大学军训感言1000字
2014/02/25 职场文书
微电影大赛策划方案
2014/06/05 职场文书
医院合作意向书范本
2015/05/08 职场文书
主持人大赛开场白
2015/05/29 职场文书
幸福终点站观后感
2015/06/04 职场文书
安全生产协议书
2016/03/22 职场文书
2016年推广普通话宣传周活动总结
2016/04/06 职场文书