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 相关文章推荐
php Notice: Undefined index 错误提示解决方法
Aug 29 PHP
PHP 强制下载文件代码
Oct 24 PHP
探讨php define()函数及defined()函数使用详解
Jun 09 PHP
yii框架表单模型使用及以数组形式提交表单数据示例
Apr 30 PHP
PHP实现自动登入google play下载app report的方法
Sep 23 PHP
PHP日期函数date格式化UNIX时间的方法
Mar 19 PHP
PHP命令空间namespace及use的用法小结
Nov 27 PHP
Yii2框架实现登陆添加验证码功能示例
Jul 12 PHP
PHP超低内存遍历目录文件和读取超大文件的方法
May 01 PHP
用php定义一个数组最简单的方法
Oct 04 PHP
Laravel 自定命令以及生成文件的例子
Oct 23 PHP
PHP实现文件上传后台处理脚本
Mar 04 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
全国FM电台频率大全 - 12 安徽省
2020/03/11 无线电
上海牌131型七灯四波段四喇叭一级收音机
2021/03/02 无线电
php通过字符串调用函数示例
2014/03/02 PHP
Jquery Ajax学习实例 向页面发出请求,返回XML格式数据
2010/03/14 Javascript
js选择并转移导航菜单示例代码
2014/08/19 Javascript
javascript实现禁止复制网页内容
2014/12/16 Javascript
使用npm发布Node.JS程序包教程
2015/03/02 Javascript
JQuery fileupload插件实现文件上传功能
2016/03/18 Javascript
Bootstrap源码解读导航条(7)
2016/12/23 Javascript
jQuery插件FusionCharts绘制的3D饼状图效果实例【附demo源码下载】
2017/03/03 Javascript
前端页面文件拖拽上传模块js代码示例
2017/05/19 Javascript
Vue进度条progressbar组件功能
2018/04/17 Javascript
angularjs的单选框+ng-repeat的实现方法
2018/09/12 Javascript
Vue+Koa2 打包后进行线上部署的教程详解
2019/07/31 Javascript
leaflet加载geojson叠加显示功能代码
2020/02/21 Javascript
vue和H5 draggable实现拖拽并替换效果
2020/07/29 Javascript
Electron+vue从零开始打造一个本地播放器的方法示例
2020/10/27 Javascript
动态创建类实例代码
2009/10/07 Python
在Python中使用Mako模版库的简单教程
2015/04/08 Python
Python中使用hashlib模块处理算法的教程
2015/04/28 Python
python实现人脸识别经典算法(一) 特征脸法
2018/03/13 Python
PyQt5每天必学之像素图控件QPixmap
2018/04/19 Python
python实现祝福弹窗效果
2019/04/07 Python
Django使用Channels实现WebSocket的方法
2019/07/28 Python
Python基于正则表达式实现计算器功能
2020/07/13 Python
HTML5 Canvas中绘制椭圆的4种方法
2015/04/24 HTML / CSS
幼教个人求职信范文
2013/12/02 职场文书
金融学专科生自我鉴定
2014/02/21 职场文书
银行办公室岗位职责
2014/03/10 职场文书
领导干部整治奢华浪费之风思想汇报
2014/10/07 职场文书
公司介绍信范文
2015/01/31 职场文书
电影地道战观后感
2015/06/04 职场文书
统招统分证明
2015/06/23 职场文书
Python中OpenCV实现查找轮廓的实例
2021/06/08 Python
python缺失值的解决方法总结
2021/06/09 Python
mysql left join快速转inner join的过程
2021/06/30 MySQL