有验证器吗?

时间:2009-09-20 14:00:05

标签: php validation

有没有像w3.org上有HTML验证器的PHP验证器?

5 个答案:

答案 0 :(得分:16)

您可以在不运行PHP脚本的情况下验证语法,使用命令行中的php选项“-l”:

$ php --help 
Usage: php [options] [-f] <file> [--] [args...]
       php [options] -r <code> [--] [args...]  
       php [options] [-B <begin_code>] -R <code> [-E <end_code>] [--] [args...]
       php [options] [-B <begin_code>] -F <file> [-E <end_code>] [--] [args...]
       php [options] -- [args...]
       php [options] -a
  ...
  -l               Syntax check only (lint)
  ...

例如,使用包含以下内容的文件

<?php

,


die;

?>

(注意明显的错误)

你会得到:

$ php -l temp.php
PHP Parse error:  syntax error, unexpected ',' in temp.php on line 3

Parse error: syntax error, unexpected ',' in temp.php on line 3
Errors parsing temp.php


在构建过程中集成它,或者作为预提交的SVN钩子,很不错,顺便说一句:它有助于避免在生产中出现语法错误^^

答案 1 :(得分:9)

您可以使用-l--syntax-check标志运行php。它检查提供的文件的语法,而不实际运行它

php --syntax-check myfile.php

答案 2 :(得分:2)

PHP引擎本身。

打开错误讯息:

error_reporting(E_ALL);

答案 3 :(得分:2)

以其他人所说的为基础:

error_reporting(E_ALL);

简单地使用PHP自己的错误消息就足够了。但是,如果你真的想得到肛门并使用一套“标准”,你可以选择PHP Code Sniffer,例如你可以实现作为你的版本控制系统的预提交钩子。

这是一个SO问题,解释了它们的用处:How useful is PHP CodeSniffer? Code Standards Enforcement in General?

答案 4 :(得分:0)

你可以试试这个:

https://phpcodechecker.com/

它似乎做得很好。对字符串中的花括号感到困惑,但非常方便。