将planets.png转换为planets.jpg 的代码
<?php
exec("convert planets.png planets.jpg");
?>
只显示空白页是行不通的。
我已经安装了imagemagik,正如它在phpinfo()中显示的那样查看这里的
还有其他配置可以运行imagemagik代码吗。
错误消息
[Sat Jul 28 20:16:11 2012] [error] [client 127.0.0.1] PHP 1. {main}() D:''wamp''www''test''into.php:0 Invalid Parameter - planets.jpg
这就是为什么显示错误消息很重要。有了它,我们可以寻找答案。
您无意中运行了名为convert.exe的Microsoft Windows程序,而不是同名的ImageMagick程序。Windows convert.exe程序用于将系统启动磁盘从MS-DOS"FAT"格式转换为NTFS格式。因此,它在系统的生命周期中只能使用一次。源
解决方案
你可以
- 重命名MS convert.exe或ImageMagick convert.exe
- 修改您的PATH,将ImageMagick的convert.exe放在MS convert.exe之前
- 按照中的说明编辑Windows注册表http://savage.net.au/ImageMagick/html/install-convert.html
exec("convert planets.png planets.jpg");
这完全等同于打开命令提示符窗口并执行此操作。
此外,正如@Elzo所指出的,convert.exe
是一个内置的可执行文件,因此您需要指定可执行文件的整个路径。(我建议这样做,而不是重命名任何一个可执行文件)。
exec("'"C:''Program Files''..''convert.exe'" planets.png planets.jpg");
phpinfo()中显示的是ImageMagic扩展。这一个没有带来"convert"cli实用程序,必须与您尝试的使用方式完全不同。