php中语法检查是非常有必要的,如果不检查语法,则在发生错误时无法正常工作,如果同时执行语法检查,则可能不会发生该错误,本篇文章我们就来看一看php语法检查的方法。


php语法检查的方法有哪些?(代码示例)-LMLPHP

我们可以使用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语法检查的方法有哪些?(代码示例)的详细内容,更多请关注Work网其它相关文章!

08-31 12:03