php,远程文件,保存本地
后端开发-php教程
原作者BlueStyle 提示 改进地方有
统计老师荣誉系统源码,vscode跑终端死机,dgx重装Ubuntu,电脑中配置tomcat,爬虫先生,php接口开发框架,遵义网络seo推广收录,彩票平台软件网站源码,数据库 电影网站模板下载地址lzw
以前的算法是等文件下载完才计算, 现在这个直接在在获取文件时候就计算大小
加了容错语句
增加了判断目录,没有目录自动创建
把计算文件大小的算法换了个
以前的那个光计算文件大小就7行代码,
现在这个只要两行
个人记账安卓源码,ubuntu版本支持情况,python爬虫 技能树,php laychat,惠州seo方式lzw
转载请保留原作者版权信息,由于作者是政府人员,为不惹麻烦,请保留此段文字完整性 html代码:
vb sql编程实例源码,vscode一定要安在c盘吗,ubuntu ssh使用,tomcat配置端口在哪个文件,sqlite比mysql,网页设计作品代码,网站服务器是什么,网页第三方js聊天插件,前端框架组件推荐,爬虫类表格,新疆php,怎么做网站的seo,手机网站cpa源码,网页菜单原代码,phpcms 设置模板风格,旅游网站发布页面源码,w78 cms企业网站管理系统v2.8,电商的程序代码lzw
快乐飞扬博客 - 远程文件下载
File:
Pass:
PHP代码:
<?php
# Copyright 2010 快乐飞扬
# http://www.klfy.org/ 供新手学习参考
set_time_limit (0); //不限时 24 * 60 * 60
$password = 'admin'; //管理密码
$pass = $_POST['password'];
if ($pass == $password) {
class runtime {
var $StartTime = 0;
var $StopTime = 0;
function get_microtime(){list($usec, $sec) = explode(' ', microtime());
return ((float)$usec + (float)$sec);}
function start() {$this->StartTime = $this->get_microtime();}
function stop() {$this->StopTime = $this->get_microtime();}
function spent() { return round(($this->StopTime - $this->StartTime) * 1000, 1);}
}
$runtime= new runtime;
$runtime->start();
if (!isset($_POST['submit'])) die();
$destination_folder = './Download/'; // 下载的文件保存目录。必须以斜杠结尾
if(!is_dir($destination_folder)) //判断目录是否存在
mkdir($destination_folder,0777); //若无则创建,并给与777权限 windows忽略
$url = $_POST['url'];
$headers = get_headers($url, 1); //得到文件大小
if ((!array_key_exists("Content-Length", $headers))) {$filesize=0; }
$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);}
$runtime->stop();
echo '
下载耗时: '.$runtime->spent().' 微秒,文件大小 '.$headers["Content-Length"].' 字节';
echo '
下载成功! '.$showtime=date("Y-m-d H:i:s").'';
}elseif(isset($_POST['password'])){
echo '
密码错误!请从新输入密码!';
}
?>