考虑以下代码
echo "tar -cvf $outpath -C $path $file<br>";
$arr = array();
$val = exec("tar -cvf $outpath -C $path $file", $arr);
var_dump($arr);
echo
输出tar -cvf ../folder/subfolder1/1234.tar -C ../folder/ subfolder2
,如果我从htdocs文件夹的命令行调用它,这个命令真的会创建归档。然而,高管什么也不做。var_dump($arr)
打印空数组。以下是的问题
- 如何使
exec
创建存档 - 为什么输出空数组
UPD请注意,我正在运行windows。
对于阅读此问题的人来说:将2>&1
添加到命令中会有所帮助。我用shell_exec
而不是片状
$val = shell_exec("tar -cvf $outpath -C $path $file 2>&1");
echo "$val"; // prints output from tar