相关疑难解决方法(0)

exec总是返回-1(或127)

我在生产服务器上使用php 5.2.9,似乎exec()函数表现为"非标准".

如果我运行,exec("ls", $output, $return_var)那么$output将按预期包含当前文件夹中的文件列表,但$return_var将按预期设置为-1而不是0.我正在使用它$return_var来确定命令在哪里成功完成,并在测试的每个其他服务器上按预期工作:)

有没有人遇到过这样的情况?


编辑:

<?php
$command = "asd";

$t1 = time();

$output = Array();
$result = -5;
$r = exec($command, $output, $result);
$t2 = time();

echo "<pre>";
var_export(Array(
    'command'=>$command,
    'result'=>$result,
    'output'=>implode("\n", $output),
    'r'=>$r,
    't2-t1'=>$t2-$t1,
));
echo "</pre>";
Run Code Online (Sandbox Code Playgroud)

无论我输入什么命令$command,$result总是-1,即使对于不存在的命令......这很奇怪

php linux exec

12
推荐指数
1
解决办法
5700
查看次数

标签 统计

exec ×1

linux ×1

php ×1