Home > Article > Backend Development > 将文件从远程下载后不经硬盘保存,直接上传至另一服务器,怎么做啊
小弟正做一项目,需用php将图片从远程下载后,再通过ftp上传到另一服务器,下载至硬盘,这个偶常做,用ftp上传本地文件,这个也会,可不经过本地硬盘,直接传递,怎么做啊,哪位大侠帮下吧
file_put_contents('ftp://用户名:口令@ftp主机/文件名', file_get_contents('http://远程主机/文件名'));
已有了与ftp服务器连接上的$ftp_stream,如果利用file_put_contents('ftp://用户名:口令@ftp主机/文件名', file_get_contents('http://远程主机/文件名')),那我还需再与ftp服务器再连接一次,势必造成资源的浪费。
我想:能否像ftp_put($ftp_stream,$remote_file, $local_file)一样利用已有的$ftp_stream,实现file_put_contents()的直接将内容写入文件的功能呢?
也就是说,有没有类似于ftp_put($ftp_stream,$remote_file, $string)的函数呢?
我想你的脑子是进水了
ftp 扩展提供有 ftp_fput 函数,为什么不用呢?
$fp = fopen('http://远程主机/文件名', 'rb');
ftp_fput($ftp_stream, $remote_file, $fp);
呵呵,写代码写的一点儿也不想动脑子了