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桌面中心(一) 创建数据库
Mar 11 PHP
PHP正确配置mysql(apache环境)
Aug 28 PHP
Sorting Array Values in PHP(数组排序)
Sep 15 PHP
php实现图形显示Ip地址的代码及注释
Jan 20 PHP
Parse正式发布开源PHP SDK
Aug 11 PHP
PHP Reflection API详解
May 12 PHP
PHP中模拟链表和链表的基本操作示例
Feb 27 PHP
Yii CGridView用法实例详解
Jul 12 PHP
Yii2框架RESTful API 格式化响应,授权认证和速率限制三部分详解
Nov 10 PHP
PHP实现支付宝即时到账功能
Dec 21 PHP
PHP开发实现快递查询功能详解
Apr 08 PHP
ThinkPHP5&amp;5.1实现验证码的生成、使用及点击刷新功能示例
Feb 07 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
通过html表格发电子邮件
2006/10/09 PHP
实现WordPress主题侧边栏切换功能的PHP脚本详解
2015/12/14 PHP
微信接口生成带参数的二维码
2017/07/31 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
JavaScript截取字符串的2个函数介绍
2014/08/27 Javascript
nodejs中简单实现Javascript Promise机制的实例
2014/12/06 NodeJs
JavaScript实现文字与图片拖拽效果的方法
2015/02/16 Javascript
分享9个最好用的JavaScript开发工具和代码编辑器
2015/03/24 Javascript
js点击返回跳转到指定页面实现过程
2020/08/20 Javascript
JSON 必知必会 观后记
2016/10/27 Javascript
微信小程序实现点击返回顶层的方法
2017/07/12 Javascript
Angularjs 1.3 中的$parse实例代码
2017/09/14 Javascript
vue中的模态对话框组件实现过程
2018/05/01 Javascript
详解javascript中的变量提升和函数提升
2018/05/24 Javascript
通过layer实现可输入的模态框的例子
2019/09/27 Javascript
浅谈vue中$bus的使用和涉及到的问题
2020/07/28 Javascript
JavaScript封装单向链表的示例代码
2020/09/17 Javascript
Python fileinput模块使用实例
2015/05/28 Python
python简单猜数游戏实例
2015/07/09 Python
pandas数据预处理之dataframe的groupby操作方法
2018/04/13 Python
Python底层封装实现方法详解
2020/01/22 Python
使用Python制作新型冠状病毒实时疫情图
2020/01/28 Python
Pycharm配置PyQt5环境的教程
2020/04/02 Python
keras分类模型中的输入数据与标签的维度实例
2020/07/03 Python
Python list和str互转的实现示例
2020/11/16 Python
css3 border旋转时的动画应用
2016/01/22 HTML / CSS
详解淘宝H5 sign加密算法
2020/08/25 HTML / CSS
Lampegiganten丹麦:欧洲领先的照明网上商店
2018/04/25 全球购物
教师找工作推荐信
2013/11/23 职场文书
预备党员思想汇报
2014/01/08 职场文书
就业协议书范本
2014/04/11 职场文书
三方协议书范本
2014/04/22 职场文书
学生期末评语大全
2014/04/30 职场文书
聘用合同范本
2015/09/21 职场文书
职业规划从高考志愿专业选择开始
2019/08/08 职场文书
java设计模式--建造者模式详解
2021/07/21 Java/Android