php带密码功能并下载远程文件保存本地指定目录 修改加强版
2015-01-24信息快讯网
php带密码功能并将远程文件下载到本地指定目录修改版,需要的朋友可以参考下。
原作者BlueStyle 提示 改进地方有
以前的算法是等文件下载完才计算,
现在这个直接在在获取文件时候就计算大小
加了容错语句
增加了判断目录,没有目录自动创建
把计算文件大小的算法换了个
以前的那个光计算文件大小就7行代码,
现在这个只要两行
转载请保留原作者版权信息,由于作者是政府人员,为不惹麻烦,请保留此段文字完整性
html代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>快乐飞扬博客 - 远程文件下载</title> </head> <body > <form method="post"> <li>File: <input name="url" size="40" /> <input name="submit" type="submit" /></li> <li>Pass: <input name="password" type="password" /></li> </form>
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 '<br /><li>下载耗时:<font color="blue"> '.$runtime->spent().' </font>微秒,文件大小<font color="blue"> '.$headers["Content-Length"].' </font>字节</li>'; echo '<br /><li><font color="red">下载成功! '.$showtime=date("Y-m-d H:i:s").'</font></li>'; }elseif(isset($_POST['password'])){ echo '<br /><li><font color="red">密码错误!请从新输入密码!</font></li>'; } ?> </body> </html>
php中批量修改文件后缀名的函数代码
PHP中读写文件实现代码
使用PHP实现密保卡功能实现代码<打包下载直接运行>
php 文件缓存函数
php下利用curl判断远程文件是否存在的实现代码
如何在symfony中导出为CSV文件中的数据
使用PHP遍历文件夹与子目录的函数代码
抓取并下载CSS中所有图片文件的php代码
PHP通过正则表达式下载图片到本地的实现代码
php中设置多级目录session的问题
PHP在获取指定目录下的目录,在获取的目录下面再创建文件,多平台
使用ThinkPHP自带的Http类下载远程图片到本地的实现代码
php 目录与文件处理-郑阿奇(续)
允许phpmyadmin空密码登录的配置方法
PHP获取文件绝对路径的代码(上一级目录)
让php处理图片变得简单 基于gb库的图片处理类附实例代码下载
php中实现记住密码自动登录的代码
理解php Hash函数,增强密码安全
php生成随机密码的几种方法
php数据库密码的找回的步骤
mysql下创建字段并设置主键的php代码
ezSQL PHP数据库操作类库
php 文件上传后缀名与文件类型对照表(几乎涵盖所有文件)
PHP生成UTF8文件的方法
php 删除记录同时删除图片文件的实现代码
PHP chmod 函数与批量修改文件目录权限
php file_exists 检查文件或目录是否存在的函数
php disk_free_space 返回目录可用空间
PHP is_dir() 判断给定文件名是否是一个目录
php 仿Comsenz安装效果代码打包提供下载
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
libmysql.dll与php.ini是否真的要拷贝到c:\windows目录下呢
用php实现的下载css文件中的图片的代码
PHPWind 发帖回帖Api PHP版打包下载
php利用header函数实现文件下载时直接提示保存
DISCUZ 论坛管理员密码忘记的解决方法