【发布时间】:2012-06-26 21:02:16
【问题描述】:
我想知道一个特定的文件是否是有效的 PHP 文件?
php -l filename 只查找我们是否有语法错误,它是 lint。
但我也想知道,在执行时,它会不会出错?
我在 Ubuntu 机器上运行。
编辑:
实际上我的问题是我允许用户为某些计算定义公式,我必须执行这些公式,但在用户提交公式之前,我想确保它们在 PHP 中是否正确
【问题讨论】:
-
确定它是否会运行的唯一方法是使用广泛的输入来运行它。 Linter 和其他分析工具无法预测它可能遇到的输入范围。但请注意,根据您的标题,脚本可能会遇到错误,但仍然是“有效的 PHP 文件”。
-
你需要编写单元测试。因为“没有错误”是未定义的。见:phpunit.de/manual/current/en
-
感谢乔纳森和理查德。但是,如果我们知道我们的 PHP 将只包含静态的东西,例如消息等,没有输入,那么呢?
-
@Jatin,是的,先生,您仍然只需要运行它。当然,在与生产环境非常接近的受控(开发)环境中这样做。但你仍然只需要运行它。
-
您需要定义“有效”。没有
<?php和?>的PHP 文件将是有效的。不会吗?
标签: php syntax-checking