2
我试图使用Image Magick将文件写入特定位置,并使用uniqid()提供唯一的文件名(因为我期望许多图像被上传)。Image Magick将文件写入文件夹
继承人是我到目前为止有:
$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。
我正在使用Ubuntu 14.04和必要的图像代表。
我recieving的错误是:
Call to a member function writeImageFile() on a non-object
它是使用变量$ TARGETDIR - 然而,根据php.net文档writeImageFile应该有一个目标目录写入镜像。
感谢您的时间
不能将文件名设置 - 这应该是一个字符串 - 到uniquid的'结果( )' - 这是一个数字。 –
我将如何去为图像提供一个唯一的ID?我删除了那行代码,错误不会改变 – PublicDisplayName
''uniquename = sprintf(“%d.jpg”,uniqid());' –