如何使用PHP获取网络上文件


Posted in PHP onOctober 09, 2006

<!-- generateindex.php -->
<?php
//设置我们将要使用的文件
$srcurl = "http://localhost/index.php";
$tempfilename = "tempindex.html";
$targetfilename = "index.html";
?>
<HTML>
<HEAD>
<TITLE>
Generating <?php echo("$targetfilename"); ?>
</TITLE>
</HEAD>
<BODY>
<P>Generating <?php echo("$targetfilename"); ?>...</P>
<?php
//首先删除上次操作可能遗留下来的临时文件。
//这个过程可能会提示错误,所以我们使用@以防止报错。
@unlink($tempfilename);
//通过一个URL的请求装入动态版本。
//在我们接收到相关内容之前,Web服务器会对PHP进行处理
//(因为本质上我们是在模拟一个Web浏览器),
//所以我们将获得的是一个静态的HTML页面。
//'r'指出我们只要求对这个“文件”进行读操作。
$dynpage = fopen($srcurl, 'r');
//处理错误
if (!$dynpage) {
echo("<P>Unable to load $srcurl. Static page ".
"update aborted!</P>");
exit();
}
//将这个URL的内容读入到一个PHP变量中。
//指定我们将读取1MB的数据(超过这个数据量一般是意味着出错了)。
$htmldata = fread($dynpage, 1024*1024);
//当我们完成工作后,关闭到源“文件”的连接。
fclose($dynpage);
//打开临时文件(同时在这个过程中建立)以用来写入(注意'w'的用法).
$tempfile = fopen($tempfilename, 'w');
//处理错误
if (!$tempfile) {
echo("<P>Unable to open temporary file ".
"($tempfilename) for writing. Static page ".
"update aborted!</P>");
exit();
}
//将静态页面的数据写入到临时文件中
fwrite($tempfile, $htmldata);
//完成写入后,关闭临时文件。
fclose($tempfile);
//如果到了这里,我们应该已经成功地写好了一个临时文件,
//现在我们可以用它来覆盖原来的静态页面了。
$ok = copy($tempfilename, $targetfilename);
//最后删除这个临时文件。
unlink($tempfilename);
?>
<P>Static page successfully updated!</P>
</BODY>
</HTML>

PHP 相关文章推荐
收集的DedeCMS一些使用经验
Mar 17 PHP
php checkbox 取值详细说明
Aug 19 PHP
php异常:Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE  eval()'d code error
May 19 PHP
php 定义404页面的实现代码
Nov 19 PHP
解析php通过cookies获取远程网页的指定代码
Jun 25 PHP
PHP实现数组递归转义的方法
Aug 28 PHP
Yii入门教程之Yii安装及hello world
Nov 25 PHP
php使用explode()函数将字符串拆分成数组的方法
Feb 17 PHP
laravel容器延迟加载以及auth扩展详解
Mar 02 PHP
一个简单安全的PHP验证码类 附调用方法
Jun 24 PHP
PHP 与 UTF-8 的最佳实践详细介绍
Jan 04 PHP
PHP容器类的两种实现方式示例
Jul 24 PHP
用PHP动态创建Flash动画
Oct 09 #PHP
一个odbc连mssql分页的类
Oct 09 #PHP
拼音码表的生成
Oct 09 #PHP
用PHP和MySQL保存和输出图片
Oct 09 #PHP
PHP生成带有雪花背景的验证码
Oct 09 #PHP
一个可查询所有表的“通用”查询分页类
Oct 09 #PHP
Get或Post提交值的非法数据处理
Oct 09 #PHP
You might like
基于PHP Socket配置以及实例的详细介绍
2013/06/13 PHP
XAMPP安装与使用方法详细解析
2013/11/27 PHP
推荐一本PHP程序猿都应该拜读的书
2014/12/31 PHP
php创建多级目录的方法
2015/03/24 PHP
php操作memcache缓存方法分享
2015/06/03 PHP
PHP实现的AES 128位加密算法示例
2019/09/16 PHP
laravel通用化的CURD的实现
2019/12/13 PHP
js 动态为textbox添加下拉框数据源的方法
2014/04/24 Javascript
JavaScript基础知识学习笔记
2014/12/02 Javascript
JavaScript模拟深蓝vs卡斯帕罗夫的国际象棋对局示例
2015/04/22 Javascript
浅谈js中的in-for循环
2016/06/28 Javascript
对mac下nodejs 更新到最新版本的最新方法(推荐)
2018/05/17 NodeJs
详解nuxt路由鉴权(express模板)
2018/11/21 Javascript
了解JavaScript表单操作和表单域
2019/05/27 Javascript
vue element-ui el-date-picker限制选择时间为当天之前的代码
2019/11/07 Javascript
前端vue-cli项目中使用img图片和background背景图的几种方法
2019/11/13 Javascript
Vue开发环境跨域访问问题
2020/01/22 Javascript
浅析微信小程序自定义日历组件及flex布局最后一行对齐问题
2020/10/29 Javascript
python遍历序列enumerate函数浅析
2017/10/17 Python
Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码
2018/09/14 Python
Python 通过微信控制实现app定位发送到个人服务器再转发微信服务器接收位置信息
2019/08/05 Python
python滑块验证码的破解实现
2019/11/10 Python
Python实现清理微信僵尸粉功能示例【基于itchat模块】
2020/05/29 Python
Hammitt官网:设计师手袋
2020/05/23 全球购物
公司周年庆典邀请函
2014/01/12 职场文书
计算机数据库专业职业生涯规划书
2014/02/08 职场文书
单位委托书范本
2014/04/04 职场文书
幼儿园保育员岗位职责
2014/04/13 职场文书
汉语言文学专业自荐信
2014/06/11 职场文书
红领巾心向党演讲稿
2014/09/10 职场文书
三人合伙协议书范本
2014/10/29 职场文书
寒山寺导游词
2015/02/03 职场文书
消防隐患整改通知书
2015/04/22 职场文书
家装电话营销开场白
2015/05/29 职场文书
导游词之山东八仙过海景区
2019/11/11 职场文书
HTML+CSS制作心跳特效的实现
2021/05/26 HTML / CSS