![](/img/trans.png)
[英]Imagemagick convert command returning error code 4 when used with PHP
[英]Executing Imagemagick's convert returning error code 1
[在Bonzo的答案后编辑]在以下代码之后,我收到此错误:
Array
(
[0] => magick: unable to create temporary file 'aboutproject1.pdf': Permission denied @ error/pdf.c/ReadPDFImage/476.
)
如何允许创建临时文件? 我当前的用户是Daemon(apache / localhost)
[编辑前]我正在尝试从PHP发出shell命令以将PDF转换为TIFF。 但是我收到错误代码1。以下是我的代码:
<?php
if(isset($_FILES['file_up']["name"])){
//print_r($_FILES);
$file_name = $_FILES['file_up']["name"];
$tmp_name = $_FILES['file_up']["tmp_name"];
if(move_uploaded_file($tmp_name, "$file_name")){
$onlyname = pathinfo($_FILES['file_up']['name'], PATHINFO_FILENAME);
chmod("$file_name", 0777);
//Command that is returning error code 1
//Iam running it on aboutproject.pdf STATIC for novv.
exec("/usr/local/Cellar/imagemagick/7.0.7-1/bin/convert aboutproject1.pdf anyuf.tif", $output, $retval);
//returning empty array
echo "output : ->"; print_r($output) ;
//returning error code 1
echo "RETURN : ->".$retval;
if ($retval == 0){
echo "First command executed !";
}
}
exit();
}
?>
请注意以下事项:
man convert
,它会为我提供正确的输出(在同一文件夹中) 请帮助我,我被卡住了。
版本7使用magick而不是convert。 转换可能仍然有效,但这取决于Imagemagick的安装方式。
您可以尝试这种错误报告方法,看看是否获得更多信息:
$array=array();
echo "<pre>";
exec("/usr/local/Cellar/imagemagick/7.0.7-1/bin/convert aboutproject1.pdf anyuf.tif 2>&1", $array);
echo "<br>".print_r($array)."<br>";
echo "</pre>";
与其使用/usr/local/Cellar/imagemagick/7.0.7-1/bin/convert,不如使用magick。 如果版本更改或imagemagick位置更改,则需要修改所有脚本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.