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