使用 Codeigniter 从 PHP 执行 perl 脚本



我在PHP和Perl方面有一个问题,我需要执行Perl Script,从我的网站PHP使用codeigniter,但脚本的执行并不明显。我解释得更好。

perl 脚本生成一个 csv 文件,当我在控制台中执行时,它运行良好,但是当我从 PHP 运行它时,它不会生成文件,并且在执行过程中不会给出任何错误,所以我认为,它只是没有运行。

该脚本需要 3 个输入参数,这些参数先前在执行相同时连接起来。但即使我尝试强制执行脚本,将值放在执行命令中,也没有任何反应。

我尝试通过以下方式执行它:

$perl_script = './zc_csv_dist_crd_3.pl' . ' ' . $ctac_corre . ' ' . $codigo. ' ' . $num_dist;
exec($perl_script);

system($perl_script);

或直接

shell_exec("./zc_csv_dist_crd_3.pl 7736 311745421 42906");
#or
exec("./zc_csv_dist_crd_3.pl 7736 311745421 42906");
#or
system("./zc_csv_dist_crd_3.pl 7736 311745421 42906");

我想澄清一下,我不需要返回值,即使是 perl 脚本也没有返回值,因为文件是空生成的或带有数据,并且这两种情况都是有效的。我读过这可能是权限问题,但我是perl,php和linux的新手。我离开了 linux 服务器功能,希望有人可以指导我。

非常感谢您的帮助。

PD:我已经耐心地阅读了stackoverflow中的论坛,PHP手册,即使这样我也无法让它工作,我知道我正在跳跃一些东西,但我现在看不到它。

您可能在安全模式下运行PHP代码,在您的情况下,这将不允许您使用您提到的函数,请查看此安全模式函数

我发现在这些链接中有一些与您类似的问题: 问题1 问题2

我希望它有所帮助。

最新更新