我已在本地 Windows 7 PC 上成功安装 ImageMagick。并测试转换 C:\xampp\htdocs\test\images\a.jpg C:\xampp\htdocs\test\images\b.jpg
但是当我从一个名为 C:\xampp\htdocs\test\index.php 的 PHP 文件中尝试使用代码时
<?php
exec("C:\Program Files\ImageMagick-6.8.9-Q16\convert C:\xampp\htdocs\test\images\a.jpg C:\xampp\htdocs\test\images\b.jpg", $output, $return);
?>
Run Code Online (Sandbox Code Playgroud)
这是行不通的。a.jpg 文件存在。我正在使用浏览器运行带有路径的 index.php 文件http://localhost/test/index.php
$output 为空,$return 为 1。
但是当我使用
<?php
exec("C:\Program Files\ImageMagick-6.8.9-Q16\convert", $output, $return);
?>
Run Code Online (Sandbox Code Playgroud)
我得到的输出是 Imagemagick 版本......如果我在命令提示符下运行命令“convert”,输出相同。我在 Windows 7 中使用 xamp。我已经搜索了很多,但是那里提到的问题并不是我所面临的。
因为当我在 PHP exec 中只使用“转换”时,我得到了输出。
所以无法理解实际问题是什么。
几个小时以来,我一直在努力解决这个问题。
exec("C:\Program Files\ImageMagick-6.8.9-Q16\convert C:\xampp\htdocs\test\images\a.jpg C:\xampp\htdocs\test\images\b.jpg", $output, $return);
Run Code Online (Sandbox Code Playgroud)
此代码应该可以正常工作,只是一个问题,请尝试运行“C:\Program Files\ImageMagick-6.8.9-Q16\convert C:\xampp\htdocs\test\images\a.jpg C:\xampp\htdocs\test \images\b.jpg"在命令提示符中没有引号,你会得到 'C:\Program' 不被识别。需要引用转换exe的路径。
尝试这个 exec('"C:\Program Files\ImageMagick-6.8.9-Q16\convert" C:\xampp\htdocs\test\images\a.jpg C:\xampp\htdocs\test\images\b.jpg', $output, $return);
它应该工作。
干杯!
| 归档时间: |
|
| 查看次数: |
4221 次 |
| 最近记录: |