如何使用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 相关文章推荐
完美实现GIF动画缩略图的php代码
Jan 02 PHP
php通用防注入程序 推荐
Feb 26 PHP
PHP对象转换为数组函数(递归方法)
Feb 04 PHP
php中使用addslashes函数报错问题的解决方法
Feb 06 PHP
对淘宝URL中ID提取的PHP代码
Sep 01 PHP
PHP JS Ip地址及域名格式检测代码
Sep 27 PHP
php获取参数的几种方法总结
Feb 18 PHP
PHP改进计算字符串相似度的函数similar_text()、levenshtein()
Oct 27 PHP
Codeigniter框架实现获取分页数据和总条数的方法
Dec 05 PHP
PHP中如何防止外部恶意提交调用ajax接口
Apr 11 PHP
PHP的PDO事务与自动提交
Jan 24 PHP
Laravel 简单实现Ajax滚动加载示例
Oct 22 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中文字母数字验证码实现代码
2008/04/25 PHP
php判断linux下程序问题实例
2015/07/09 PHP
PHP中file_exists使用中遇到的问题小结
2016/04/05 PHP
nginx下安装php7+php5
2016/07/31 PHP
PHP实现登录注册之BootStrap表单功能
2017/09/03 PHP
php如何把表单内容提交到数据库
2019/07/08 PHP
jquery中防刷IP流量软件影响统计的一点对策
2011/07/10 Javascript
JavaScript实现的GBK、UTF8字符串实际长度计算函数
2014/08/27 Javascript
深入分析原生JavaScript事件
2014/12/29 Javascript
javascript正则表达式总结
2016/02/29 Javascript
BootStrap扔进Django里的方法详解
2016/05/13 Javascript
关于Javascript回调函数的一个妙用
2016/08/29 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的方法
2016/11/29 Javascript
重新理解JavaScript的六种继承方式
2017/03/24 Javascript
详解webpack性能优化——DLL
2017/10/20 Javascript
nodejs实现大文件(在线视频)的读取
2020/10/16 NodeJs
vue实现树形菜单效果
2018/03/19 Javascript
Express的HTTP重定向到HTTPS的方法
2018/06/06 Javascript
微信小程序使用map组件实现解析经纬度功能示例
2019/01/22 Javascript
Python中如何获取类属性的列表
2016/12/26 Python
padas 生成excel 增加sheet表的实例
2018/12/11 Python
Python3.5文件读与写操作经典实例详解
2019/05/01 Python
Pytorch Tensor基本数学运算详解
2019/12/30 Python
Python生成随机验证码代码实例解析
2020/06/09 Python
详细分析Python collections工具库
2020/07/16 Python
五分钟带你搞懂python 迭代器与生成器
2020/08/30 Python
CSS3绘制圆角矩形的简单示例
2015/09/28 HTML / CSS
canvas简单连线动画的实现代码
2020/02/04 HTML / CSS
BrandAlley英国:法国折扣奢侈品网上零售商
2017/07/03 全球购物
天猫某品牌专卖店运营计划书
2014/03/21 职场文书
专科应届毕业生求职信
2014/06/04 职场文书
2015年教师个人业务工作总结
2015/10/23 职场文书
公司中层管理培训心得体会
2016/01/11 职场文书
go:垃圾回收GC触发条件详解
2021/04/24 Golang
CSS极坐标的实例代码
2021/06/03 HTML / CSS
基于Python实现西西成语接龙小助手
2022/08/05 Golang