Php Image Magick正在将文件写入文件夹
我尝试使用Image Magick将文件写入特定位置,并使用uniqid()提供唯一的文件名(因为我希望上载许多图像) 以下是我到目前为止的情况:Php Image Magick正在将文件写入文件夹,php,imagemagick,ubuntu-14.04,Php,Imagemagick,Ubuntu 14.04,我尝试使用Image Magick将文件写入特定位置,并使用uniqid()提供唯一的文件名(因为我希望上载许多图像) 以下是我到目前为止的情况: $targetdir = '/var/www/html/uploads/'; $targetfile = basename($_FILES["image"]["name"]); move_uploaded_file($targetfile,$targetdir); $image = new Imagick($_FILES['image']['tm
$targetdir = '/var/www/html/uploads/';
$targetfile = basename($_FILES["image"]["name"]);
move_uploaded_file($targetfile,$targetdir);
$image = new Imagick($_FILES['image']['tmp_name']);
$uid = uniqid();
$image->setImageColorspace(imagick::COLORSPACE_RGB);
$image->setImageFormat("jpeg");
$image->scaleImage(80,80);
$image->setFilename($uid);
$_FILES['image']->writeImageFile($targetdir);
该文件最初是JPEG格式
我正在使用Ubuntu14.04和一些必要的图像代理
我收到的错误是:
Call to a member function writeImageFile() on a non-object
它使用变量$targetdir-但是根据php.net文档,writeImageFile应该有一个目标目录来写入图像
谢谢您抽出时间试着打电话
$image->writeImage($targetdir.$uid.".jpg");
而不是
$_FILES['image']->writeImageFile($targetdir);
您不能将文件名(应该是字符串)设置为
uniquid()
-的结果,这是一个数字。我该如何为图像指定唯一的ID?我已经删除了那行代码,错误不会改变类似于$uniquename=sprintf(“%d.jpg”,uniqid())代码>立即解决问题,救生员!