我有一个关于通过 PHP 运行 shell 命令的问题。compass compile [project]
我的目标是通过 PHP成功运行。我尝试了以下方法:
echo system('compass compile [project]', $s); // prints [31m[0m
echo $s; // prints 1
echo passthru('compass compile [project]', $p); // prints [31m[0m
echo $p; // prints 1
echo shell_exec('compass compile [project]'); // prints [31m[0m
echo exec('compass compile [project]', $e, $ee);
print_r($e); // Array ( [0] => [31m[0m )
echo $ee; // prints 1
我什至尝试对包含的可执行文件运行 shell 命令,compass compile test
但仍然得到与上述试验相同的结果。
我的问题
是什么[31m[0m
意思?这是否代表二进制数据?这些是否代表搜索引擎建议的 bash 颜色?
据我所知,输出应该如下:
对于踢球,我尝试通过执行system(/usr/local/bin/compass compile [project]);
并得到相同的结果。我仔细检查了我的路径,所以我知道我可以按预期执行这些命令。这是来自的输出echo $PATH
:
/usr/lib/lightdm/lightdm:
/usr/local/sbin:
/usr/local/bin:
/usr/sbin:
/usr/bin:
/sbin:/bin:
/usr/games:
/usr/local/games:
/var/lib/gems/1.9.1/bin
有没有办法使用 PHP 编译指南针项目?