gpt4 book ai didi

php - 通过 exec() 从 php 调用 php 没有结果

转载 作者:可可西里 更新时间:2023-10-31 23:55:27 25 4
gpt4 key购买 nike

我有一个 PHP 脚本,可以根据用户输入创建其他 PHP 文件。基本上,有些文件包含可以由用户翻译的语言特定常量 (define)。为了避免运行时错误,我想测试新写入的文件是否存在解析错误(由于“不寻常”的字符序列)。我在这里阅读了几篇关于 SO 的文章(比如 PHP include files with parse errors )并尝试了一个使用

$output = exec("php -l $filename");

判断一个文件是否解析正确。这在我的本地机器上完美运行,但在提供商的机器上,调用 exec("php ...") 的输出似乎总是空的。我尝试调用 ls,它给了我输出,让我假设 PHP 以某种方式配置为不对命令行调用使用react。有谁知道解决这个问题的方法吗?

编辑: 我忘了说,我已经尝试过 shell_exec 但它也没有给出任何结果。回应 sganesh 的回答:我也试过,对不起我忘了提。但是,无论要测试的 PHP 文件是否有语法错误,输出(第二个参数)总是一个空数组,返回值总是 127。

最佳答案

我遇到了同样的问题。在 running-at-from-php-gives-no-output 中找到了对我有用的解决方案.我需要添加输出重定向。

$output = exec("php -l $filename 2>&1");

关于php - 通过 exec() 从 php 调用 php 没有结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2414647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com