任何人都可以帮我实现如何将上传的文件从一台服务器移动到另一台服务器
我不是在谈论move_uploaded_file()函数。
例如,
如果图像是从http://example.com
上传的如何将其移至http://image.example.com
有可能吗?不是通过发送另一个帖子或提出请求?
答案 0 :(得分:2)
获取已上传的文件,将其移至临时位置,然后将其推送到您喜欢的任何FTP-Acount。
$tempName = tempnam(sys_get_temp_dir(), 'upload');
move_uploaded_file($_FILES["file"]["tmpname"], $tempName);
$handle = fopen("ftp://user:password@example.com/somefile.txt", "w");
fwrite($handle, file_get_contents($uploadedFile));
fclose($handle);
unlink($tempName);
实际上你甚至不需要move_uploaded_file
的部分。获取上传的文件并将其内容写入使用fopen
打开的文件是完全足够的。有关使用fopen
打开网址的更多信息,请查看php-documentation。有关上传文件的详细信息,请查看File-Upload-Section
[编辑] 在代码示例
中添加了file_get_contents
[编辑] 缩短示例
$handle = fopen("ftp://user:password@example.com/somefile.txt", "w");
fwrite($handle, file_get_contents($_FILES["file"]["tmpname"]);
fclose($handle);
// As the uploaded file has not been moved from the temporary folder
// it will be deleted from the server the moment the script is finished.
// So no cleaning up is required here.