PHP 経由でシェル コマンドを実行することに関して質問があります。私の目標は、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
含まれている実行可能ファイルに対してシェルコマンドを実行しよう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 を使用してコンパス プロジェクトをコンパイルする方法はありますか?