PHP exec 在函数中不起作用


php exec not working in a function?

使用 wamp/php 5.3 我有一个奇怪的行为,我想听听你对

...

我需要执行一些外部/shell 命令,但是当我将它们打包到函数中时,exec() 似乎不再工作了......

示例:如果我做这样的事情:

<?php 
/// some stuff
$getAppCmd = $CLI_CMD." -q -f ".$CLI_REQ_PATH."'getApp.py";
exec($getAppCmd, $apps, $rt);
print_r($apps);
/// other stuff
?>

==> 它工作得很好:)

但是,如果我尝试实现更可重用的东西:

<?php
// Some stuff
function getApp(){
    $getAppCmd = $CLI_CMD." -q -f ".$CLI_REQ_PATH."'getApp.py";
    exec($getAppCmd, $apps, $rt);       
    print_r($apps);
    return $apps;
}
$list = getApp();
print_r($list);
//other stuff
?>

==> 我什么也没打印 数组() 数组()

我错过了什么吗?

我已经经历了几个线程,但找不到指导我的东西,即使我返回一个数组,返回也应该有效,并且命令在函数内部和外部是相同的......

我不明白,需要你的帮助。

谢谢!

您正在执行命令dirC:'temp而不是dir C:'temp,此处缺少空格。

$path = "C:'temp";
$cmd = "dir ".$path;