我一直试图在PHP中使用ghostscript将pdf文件转换为图像(png,jpg)。
只要它们是图像,我就不在乎。这是我使用的代码。exec("gs -sDEVICE=jpeg -sOutputFile=/Applications/Mamp/htdocs/cover.jpg -r144 /Applications/Mamp/htdocs/test.pdf");
当我输入完全相同的东西时,显然没有exec和引号,在命令行中它完全符合我的要求。但是,当我运行php文件时没有任何反应。我正在使用MAMP服务器,服务器似乎工作正常,每当我用它运行另一个文件我没有问题。任何人都有任何想法,为什么它可能无法正确执行?
答案 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");