这对我来说很奇怪。我想知道为什么。我编写了一个 PHP 脚本来验证另一个名为test.php的 PHP 脚本的语法
<?php
print("Hello World");
?>
验证脚本index.php是:
#!/usr/bin/env php
<?php
exec("php -l test.php", $error, $retcode);
echo($retcode . "<br />");
var_dump($error);
?>
当我在命令行php index.php上运行时,它会生成以下输出:
0<br />array(1) {
[0]=>
string(37) "No syntax errors detected in test.php"
}
这对我来说看起来不错。但是,当我在 localhost 上运行时,它会生成以下输出:
#!/usr/bin/env php 5
array(0) { }
为什么 $retcode 设置为 5?另外,我在 PHP5.3