≡
  • 网络编程
  • 数据库
  • CMS技巧
  • 软件编程
  • PHP笔记
  • JavaScript
  • MySQL
位置:首页 > 网络编程 > PHP笔记

php带密码并下载远程文件保存本地指定目录的简单示例

人气:302 时间:2020-11-27

这篇文章主要为大家详细介绍了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> 

本文来自:http://www.q1010.com/173/13579-0.html

注:关于php带密码并下载远程文件保存本地指定目录的简单示例的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。

关键词:

您可能感兴趣的文章

上一篇:php set_time_limit(0) 设置程序执行时间的简单示例
下一篇:PHP 循环列出目录内容函数功能实例
热门文章
  • PHP 写入WRITE编码为UTF8的文件示例
  • PHP 中文字符串截取函数示例:支持gb2312,gbk,big
  • PHP 简单留言板的制作示例
  • 解决Fatal error: Call to undefined function mb_convert_encoding() in错误问题
  • PHP语言基础(标记、注释、变量、数组、常量、函数)示例
  • php 生成迅雷链接的简单示例
  • php 获取短网址的实现方法
  • PHP 通用分页类的简单示例
  • PHP 使用文件方式导入导出整个MYSQL数据库的实现方法
  • php 获取MYSQL错误的简单示例
  • 最新文章
    • 解决PHP使用redis实现统计缓存MySQL压力的问题
    • php 简单的上传进度条的简单示例
    • php 给html中引用的js和css路径打上版本号的实现方法
    • php 实现计算年龄精准到年月日的实例
    • php+ajax无刷新分页的简单示例
    • 解决php+ajax无刷新上传图片的问题
    • 解决PHP生成HTML静态页面的问题
    • 解决PHP使用uniqid函数生成唯一ID的问题
    • 解决PHP防刷票的一些问题
    • 微信access_token的获取开发的实现方法

四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。