这是一个简单的代码来调整图像大小并将其发送到ftp服务器:
$info = getimagesize($_FILES["personalPhoto"]["tmp_name"]);
$image = imagecreatefromjpeg($_FILES["personalPhoto"]["tmp_name"]);
ob_start();
imagejpeg($image,null, 1);
$resizedImage = ob_get_contents();
ob_end_clean();
ftp_put($ftpConn,'/Kamil/HostMe/AllImages/'.$fileName.'.jpg',$_FILES["personalPhoto"]["tmp_name"],FTP_BINARY);
ftp_put($ftpConn,'/Kamil/HostMe/AllImages/'.$fileName.'.jpg',$resizedImage,FTP_BINARY);
第一个ftp_put命令工作正常(将原始图像发送到服务器)
应该发送调整大小的图像的第二个ftp_put命令不起作用。任何想法?
答案 0 :(得分:1)
$resizedImage
是PHP变量,而不是物理文件。要解决您的问题,您可以将$resizedImage
写入文件,然后将其设置为ftp_put
。如:
$file = "/tmp/somefile.jpg";
file_put_contents($file, $resizedImage);
ftp_put(
$ftpConn,
'/Kamil/HostMe/AllImages/'.$fileName.'.jpg',
$file,
FTP_BINARY
);