使用PHP获取网络文件的实现代码


Posted in PHP onJanuary 01, 2010
<?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 相关文章推荐
随时给自己贴的图片加文字的php代码
Mar 08 PHP
PHP XML操作的各种方法解析(比较详细)
Jun 17 PHP
codeigniter上传图片不能正确识别图片类型问题解决方法
Jul 25 PHP
php递归创建目录的方法
Feb 02 PHP
php单例模式实现方法分析
Mar 14 PHP
十个PHP高级应用技巧果断收藏
Sep 25 PHP
PHP使用strtotime获取上个月、下个月、本月的日期
Dec 30 PHP
php单链表实现代码分享
Jul 04 PHP
php使用get_class_methods()函数获取分类的方法
Jul 20 PHP
windows7配置Nginx+php+mysql的详细教程
Sep 04 PHP
php技巧小结【推荐】
Jan 19 PHP
PHP的RSA加密解密方法以及开发接口使用
Feb 11 PHP
php中计算时间差的几种方法
Dec 31 #PHP
php 操作excel文件的方法小结
Dec 31 #PHP
PHP编程过程中需要了解的this,self,parent的区别
Dec 30 #PHP
用php实现让页面只能被百度gogole蜘蛛访问的方法
Dec 29 #PHP
PHP类的使用 实例代码讲解
Dec 28 #PHP
php 多线程上下文中安全写文件实现代码
Dec 28 #PHP
PHP 获取目录下的图片并随机显示的代码
Dec 28 #PHP
You might like
php 输出双引号&quot;与单引号'的方法
2010/05/09 PHP
PHP 利用AJAX获取网页并输出的实现代码(Zjmainstay)
2012/08/31 PHP
PHP实现一个简单url路由功能实例
2016/11/05 PHP
Zend Framework使用Zend_Loader组件动态加载文件和类用法详解
2016/12/09 PHP
网页开发中的容易忽略的问题 javascript HTML中的table
2009/04/15 Javascript
基于JQuery制作的产品广告效果
2010/12/08 Javascript
为什么Node.js会这么火呢?Node.js流行的原因
2014/12/01 Javascript
使用jQuery获取data-的自定义属性
2015/11/10 Javascript
基于JavaScript实现弹出框效果
2016/02/19 Javascript
Google 地图类型详解及示例代码
2016/08/06 Javascript
Omi v1.0.2发布正式支持传递javascript表达式
2017/03/21 Javascript
浅谈angular.js跨域post解决方案
2017/08/30 Javascript
vue微信分享出来的链接点开是首页问题的解决方法
2018/11/28 Javascript
ES6 对象的新功能与解构赋值介绍
2019/02/05 Javascript
Vue中遍历数组的新方法实例详解
2019/07/21 Javascript
Layui实现带查询条件的分页
2019/07/27 Javascript
Vue 设置axios请求格式为form-data的操作步骤
2019/10/29 Javascript
js实现小时钟效果
2020/03/25 Javascript
5个你不知道的JavaScript字符串处理库(小结)
2020/06/01 Javascript
JavaScript中的几种继承方法示例
2020/12/06 Javascript
微信小程序实现modal弹出框遮罩层组件(可带文本框)
2020/12/20 Javascript
javascript中闭包closure的深入讲解
2021/03/03 Javascript
EM算法的python实现的方法步骤
2018/01/02 Python
Python延时操作实现方法示例
2018/08/14 Python
python射线法判断一个点在图形区域内外
2019/06/28 Python
python实现批量命名照片
2020/06/18 Python
python 基于opencv 绘制图像轮廓
2020/12/11 Python
allbeauty美国:英国在线美容店
2019/03/11 全球购物
美国葡萄酒网上商店:Martha Stewart Wine Co.
2019/03/17 全球购物
美国排名第一的葡萄酒俱乐部:Firstleaf Wine Club
2020/01/02 全球购物
工厂保洁员岗位职责
2013/12/04 职场文书
你懂得怎么写自荐信吗?
2013/12/27 职场文书
给导游的表扬信
2014/01/10 职场文书
计算机系统管理员求职信
2014/06/20 职场文书
2016年教师节慰问信
2015/12/01 职场文书
Appium中scroll和drag_and_drop根据元素位置滑动
2022/02/15 Python