Php 如何将文件名传递给ftp_put函数?

Php 如何将文件名传递给ftp_put函数?,php,Php,这是一个调整图像大小并将其发送到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服务器的简单代码:

$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命令本应发送已调整大小的图像,但该命令不起作用。有什么想法吗?

$resizedImage是一个PHP变量,不是物理文件。为了解决您的问题,您可以将$resizedImage写入一个文件,然后将其设置为ftp\u put。例如:

$file = "/tmp/somefile.jpg";
file_put_contents($file, $resizedImage);
ftp_put(
  $ftpConn,
  '/Kamil/HostMe/AllImages/'.$fileName.'.jpg',
  $file,
  FTP_BINARY
);

它应该是文件内容