php实现下载远程⽂件的代码
下⾯是⼀段php代码,按注释修改好上传到空间即可使⽤。
<?php
function get_file($url, $folder = "./") {
set_time_limit (24 * 60 * 60); // 设置超时时间
$destination_folder = $folder . '/'; // ⽂件下载保存⽬录,默认为当前⽂件⽬录
if (!is_dir($destination_folder)) { // 判断⽬录是否存在
mkdirs($destination_folder); // 如果没有就建⽴⽬录
}
$newfname = $destination_folder . basename($url); // 取得⽂件的名称
$file = fopen ($url, "rb"); // 远程下载⽂件,⼆进制模式
if ($file) { // 如果下载成功
$newf = fopen ($newfname, "wb"); // 远在⽂件⽂件
if ($newf) // 如果⽂件保存成功
while (!feof($file)) { // 判断附件写⼊是否完整
fwrite($newf, fread($file, 1024 * 8), 1024 * 8); // 没有写完就继续
}
}
if ($file) {
fclose($file); // 关闭远程⽂件
}
php手机版下载if ($newf) {
fclose($newf); // 关闭本地⽂件
}
return true;
}
function mkdirs($path , $mode = "0755") {
if (!is_dir($path)) { // 判断⽬录是否存在
mkdirs(dirname($path), $mode); // 循环建⽴⽬录
mkdir($path, $mode); // 建⽴⽬录
}
return true;
}
/
/ 使⽤⽰例
echo get_file('/wordpress-3.3.1-zh_CN.zip');
>
访问该⽂件后,稍等⼀会⼉,如果页⾯显⽰1,则代表已经成功下载,我这边实际使⽤时,接近50M,只需⼗⼏S的时间就够了~
裸露的代码实在不好看,⽤起来也不⽅便,每次都要直接修改⽂件才能建⽴新的下载任务,过两天闲着没事的时候把它优化下,⾄少弄个清爽的界⾯,那样⽤起来也⽅便些!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论