我正在使用PHP exec
函数执行ImageMagick命令,它返回error code 4
probably
表示The system cannot open the file
但是当我在Windows终端中运行相同的命令时它工作正常。我使用下面的命令调整图像大小:
在终端(工作正常)
convert -resize 150^% ad.png res_ad.png
在PHP中(返回错误代码4)
exec(escapeshellcmd("convert -resize 150% $file_name.png res_$file_name.png"), $output2, $return2)
PS:我已经检查过,图像的路径是正确的。
答案 0 :(得分:0)
我只使用php从Imagemagick返回1或0,所以我不知道4是来自。
我使用了类似的代码但是从未在exec中使用过escapeshellcmd。 exec正在调用外部程序,我不确定你可以在那里使用它。
尝试(在大多数情况下注意转换后的输入图像):
exec("convert $file_name.png -resize 150% res_$file_name.png");
您可以在将输入和输出图像文件名发送到exec()
之前验证它们不同的错误报告:
$array=array();
echo "<pre>";
exec("convert $file_name.png -resize 150% res_$file_name.png 2>&1", $array);
echo "<br>".print_r($array)."<br>";
echo "</pre>";