如何使用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 相关文章推荐
第十二节 类的自动加载 [12]
Oct 09 PHP
粗略计算在线时间,bug:ip相同
Dec 09 PHP
php将fileterms函数返回的结果变成可读的形式
Apr 21 PHP
php数组函数序列之array_unique() - 去除数组中重复的元素值
Oct 29 PHP
PHP中集成PayPal标准支付的实现方法分享
Feb 06 PHP
关于二级目录拖拽排序的实现(源码示例下载)
Apr 26 PHP
PHP实现把MySQL数据库导出为.sql文件实例(仿PHPMyadmin导出功能)
May 10 PHP
ThinkPHP2.0读取MSSQL提示Incorrect syntax near the keyword 'AS'的解决方法
Jun 25 PHP
php实现计数器方法小结
Jan 05 PHP
浅谈使用PHP开发微信支付的流程
Oct 04 PHP
PHP5.6读写excel表格文件操作示例
Feb 26 PHP
php屏蔽错误及提示的方法
May 10 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画图实例
2014/11/05 PHP
培养自己的php编码规范
2015/09/28 PHP
作为程序员必知的16个最佳PHP库
2015/12/09 PHP
PHP将身份证正反面两张照片合成一张图片的代码
2017/04/08 PHP
javascript 命名规则 变量命名规则
2010/02/25 Javascript
非常有用的40款jQuery 插件推荐(系列二)
2011/12/25 Javascript
CheckBoxList多选样式jquery、C#获取选择项
2013/09/06 Javascript
js的回调函数详解
2015/01/05 Javascript
JS实现向表格行添加新单元格的方法
2015/03/30 Javascript
jQuery插件EasyUI校验规则 validatebox验证框
2015/11/29 Javascript
JS DOM实现鼠标滑动图片效果
2020/09/17 Javascript
jQuery点击其他地方时菜单消失的实现方法
2016/04/22 Javascript
js实现的万能flv网页播放器代码
2016/04/30 Javascript
js提交form表单,并传递参数的实现方法
2016/05/25 Javascript
通过BootStrap-select插件 js jQuery控制select属性变化
2017/01/03 Javascript
nodejs前端模板引擎swig入门详解
2018/05/15 NodeJs
JS获取当前时间的实例代码(昨天、今天、明天)
2018/11/13 Javascript
基于vue实现探探滑动组件功能
2020/05/29 Javascript
用Python遍历C盘dll文件的方法
2015/05/06 Python
Python中time模块和datetime模块的用法示例
2016/02/28 Python
python 判断参数为Nonetype类型或空的实例
2018/10/30 Python
python中sort和sorted排序的实例方法
2019/08/26 Python
python wav模块获取采样率 采样点声道量化位数(实例代码)
2020/01/22 Python
PyTorch笔记之scatter()函数的使用
2020/02/12 Python
Python基于pandas绘制散点图矩阵代码实例
2020/06/04 Python
百丽国际旗下购物网站:优购
2017/02/28 全球购物
ONLY瑞典官网:世界知名服装品牌
2018/06/19 全球购物
Java中采用什么结构来捕获、处理异常?各子句的顺序、功能如何
2013/10/07 面试题
机电一体化毕业生求职信
2013/11/02 职场文书
天网工程实施方案
2014/03/26 职场文书
保安公司服务承诺书
2014/05/28 职场文书
毕业生学校组织意见
2015/06/04 职场文书
幼儿园开学报名通知
2015/07/16 职场文书
高中诗歌鉴赏教学反思
2016/02/16 职场文书
检举信的写法
2019/04/10 职场文书
pandas数值排序的实现实例
2021/07/25 Python