PHP如何实现获取网络上的文件?
发布时间:2020-12-13 20:49:54 所属栏目:PHP教程 来源:网络整理
导读:PHP可以获取网络上的文件吗?PHP如何实现获取网络上的文件?请看实例代码: !-- generateindex.php -- ?php //设置我们将要使用的文件 $srcurl = http://localhost/index.php; $tempfilename = tempindex.html; $targetfilename = index.html; ? HTML HEAD T
PHP可以获取网络上的文件吗?PHP如何实现获取网络上的文件?请看实例代码: <!-- 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> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |