php实现下载远程文件的代码
2013-06-17 16:11
721 查看
下面是一段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); // 关闭远程文件
}
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('http://cn.wordpress.org/wordpress-3.3.1-zh_CN.zip');
?>
访问该文件后,稍等一会儿,如果页面显示1,则代表已经成功下载,我这边实际使用时,接近50M,只需十几S的时间就够了~
裸露的代码实在不好看,用起来也不方便,每次都要直接修改文件才能建立新的下载任务,过两天闲着没事的时候把它优化下,至少弄个清爽的界面,那样用起来也方便些!
<?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); // 关闭远程文件
}
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('http://cn.wordpress.org/wordpress-3.3.1-zh_CN.zip');
?>
访问该文件后,稍等一会儿,如果页面显示1,则代表已经成功下载,我这边实际使用时,接近50M,只需十几S的时间就够了~
裸露的代码实在不好看,用起来也不方便,每次都要直接修改文件才能建立新的下载任务,过两天闲着没事的时候把它优化下,至少弄个清爽的界面,那样用起来也方便些!
相关文章推荐
- PHP代码实现远程下载文件到本地的函数
- PHP代码实现远程下载文件到本地的函数
- PHP代码实现远程下载文件到本地的函数
- PHP代码实现远程下载文件到本地的函数
- php实现限制文件下载速度的代码实例
- PHP实现远程下载文件到本地
- 使用PHP下载CSS文件中的所有图片【几行代码即可实现】
- 使用PHP自带zlib函数 几行代码实现PHP文件打包下载zip
- php 强制下载文件实现代码
- php实现当前页面点击下载文件的实例代码
- php实现文件下载的一段代码
- PHP实现远程下载文件到本地
- 文件上传下载PHP代码实现
- 使用PHP自带zlib函数 几行代码实现PHP文件打包下载zip
- PHP用代码实现文件下载
- php download.php实现代码 跳转到下载文件(response.redirect)
- php做下载文件的实现代码及文件名中乱码解决方法
- php下利用curl判断远程文件是否存在的实现代码
- PHP用代码实现文件下载