PHP と ImageMagick (http://net.tutsplus.com/tutorials/php/create-instagram-filters-with-php/) を使用して Instagram にあるゴッサム機能を追加しようとしています。指定されたスクリプトは機能しませんが、コマンドが行います。コマンドを生成してコマンド ラインにコピー アンド ペーストすると、正常に動作します。しかし、exec() でそれらを実行しようとすると、機能しません。与えられた出力を見たところ、コマンドが見つからないと表示されています。php.ini でセーフモードをオフにしており、exec() は無効な機能ではありません。アンパサンドと '2>&1' を追加しようとしましたが、役に立ちませんでした。exec() がコマンドを理解できないのはなぜですか? ここにスクリプトがあります
function gotham($image) {
exec("convert " . $image . " -modulate 120,10,100 -fill '#222b6d' -colorize 20 -gamma 0.5 -contrast -contrast " . $image . " 2>&1", $output1);
exec("convert " . $image . " -bordercolor black -border 20x20 " . $image . " 2>&1", $output2);
}
$output 変数の var_dump から得られるものは次のとおりです。
array(1) { [0]=> string(30) "sh: convert: command not found" } array(1) { [0]=> string(30) "sh: convert: command not found" }