PHP exec错误,可能是使用ghostscript的MAMP

时间:2012-10-21 03:52:32

标签: php exec mamp ghostscript

我一直试图在PHP中使用ghostscript将pdf文件转换为图像(png,jpg)。

只要它们是图像,我就不在乎。这是我使用的代码。

exec("gs -sDEVICE=jpeg -sOutputFile=/Applications/Mamp/htdocs/cover.jpg -r144 /Applications/Mamp/htdocs/test.pdf"); 

当我输入完全相同的东西时,显然没有exec和引号,在命令行中它完全符合我的要求。但是,当我运行php文件时没有任何反应。我正在使用MAMP服务器,服务器似乎工作正常,每当我用它运行另一个文件我没有问题。任何人都有任何想法,为什么它可能无法正确执行?

1 个答案:

答案 0 :(得分:5)

gs可执行文件可能不在PHP的路径中,因此无法使用exec()运行它。输入命令的完整路径将允许它在PHP中运行。

要查找完整路径,您可以从命令行运行which gs,因为它对您来说是可执行的,然后将该路径复制到exec()方法中。

> which gs
/path/to/gs

在PHP中更新exec()

exec("/path/to/gs -sDEVICE=jpeg -sOutputFile=/Applications/Mamp/htdocs/cover.jpg -r144 /Applications/Mamp/htdocs/test.pdf");