URLからファイルを取得し、FTP経由でPHPを使用して別のサーバにアップロードしようとしています。 ftp_put()は、文字列は$アップロードののvar_dump()がNULLである警告:ftp_put()は、パラメータ3に有効なパスが指定されていることを期待しています。
// file to move:
$local_file = file_get_contents("http://cdn.server.com/affiliate/1.jpg");
$ftp_path = "/virtualhosts/path/for/upload/1.jpg";
// connect to FTP server (port 21)
$conn_id = ftp_connect($host, 21) or die ("Cannot connect to host");
// send access parameters
$ftp_login = ftp_login($conn_id, $usr, $pwd) or die("Cannot login");
// turn on passive mode transfers (some servers need this)
//ftp_pasv($conn_id, true);
// perform file upload
$upload = ftp_put($conn_id, $ftp_path, $local_file, FTP_BINARY);
var_dump($upload);
exit();
を与え、パラメータ3は、有効なパスであることを期待:私はエラー警告を受けています。 $ local_fileをvar_dumpしてその内容を見ることができるので、URLは正しい(この例では明らかではない)。
file_get_contents()で返された文字列を、ftp_put()関数で使用できるリソースに変換するにはどうすればよいですか?