【发布时间】:2018-05-29 11:09:19
【问题描述】:
我正在使用 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:我已经检查过,图片的路径是正确的。
【问题讨论】:
-
你可以这样试试吗? $command = '转换 -resize 150% "'.$file_name.'.png" "res_'.$file_name.'.png"'; exec($command, $output2, $return2);
-
@JosMarRivera 我试过了,得到了同样的错误。反正你提供的命令和我一样。
-
已解决的问题:我在互联网上某处读到:在 Windows 上,有几个 convert.exe 命令,所有这些命令都在 PATH 中。因此,您必须指定正确的 convert.exe 可执行文件的路径。解决方案:在命令前添加“magick”,效果很好,例如:magick convert ad.png -resize 150% res_ad_png 效果很好
-
太棒了@D555,我为你感到高兴!
标签: php windows imagemagick wamp