PHP可以获取网络上的文件吗?PHP如何实现获取网络上的文件?请看实例代码:

//设置我们将要使用的文件

$srcurl = "http://localhost/index.php";

$tempfilename = "tempindex.html";

$targetfilename = "index.html";

?>

Generating <?php echo("$targetfilename"); ?>

Generating <?php echo("$targetfilename"); ?>...

//首先删除上次操作可能遗留下来的临时文件。

//这个过程可能会提示错误,所以我们使用@以防止报错。

@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!

php获取网络文件的几种方式,PHP如何实现获取网络上的文件?相关推荐

  1. c#获取网页源代码的5种方式

    全栈工程师开发手册 (作者:栾鹏) c#教程全解 c#获取网页源代码的5种方式,发送请求获取响应数据流,按照不同的编码转换为响应字符串 测试代码 static void Main() {string ...

  2. 获取class文件对象三种方式

    Class类 阅读API的Class类得知,Class 没有公共构造方法.Class 对象是在加载类时由 Java 虚拟机以及通过调用类加载器中的 defineClass 方法自动构造的 获取Clas ...

  3. iOS 通过URL网络获取XML数据的两种方式

    下面简单介绍如何通过url获取xml的两种方式. 第一种方式相对简单,使用NSData的构造函数dataWithContentsOfURL:不多解释,直接上代码咯. NSURL *url = [NSU ...

  4. 查看binlog文件的2种方式

    2019独角兽企业重金招聘Python工程师标准>>> 查看binlog文件的2种方式 1.使用show binlog events a.获取binlog文件列表 mysql> ...

  5. Java下载文件的几种方式

    public HttpServletResponse download(String path, HttpServletResponse response) {try {// path是指欲下载的文件 ...

  6. java反射之获取class对象,Java之反射机制(获取Class对象的三种方式)

    Java之反射机制(获取Class对象的三种方式) 开发工具与关键技术:MyEclipse 10,java 作者:刘东标 撰写时间:2019-06-14 如何得到各个字节码对应的实例对象? 每个类被加 ...

  7. java加载properties文件的几种方式,java高级面试笔试题

    我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家. 扫描二维码或搜索下图红色VX号,加VX好友,拉你进[程序员面试学习交流群]免费领取.也欢迎各位一起 ...

  8. 用Python读取CSV文件的5种方式

    典型的数据集stocks.csv: 一个股票的数据集,其实就是常见的表格数据.有股票代码,价格,日期,时间,价格变动和成交量.这个数据集其实就是一个表格数据,有自己的头部和身体. 第一招:简单的读取 ...

  9. python 下载文件-Python下载文件的11种方式

    原标题:Python下载文件的11种方式 在本教程中,你将学习如何使用不同的Python模块从web下载文件.此外,你将下载常规文件.web页面.Amazon S3和其他资源. 最后,你将学习如何克服 ...

最新文章

  1. 下载编译网站生成chm
  2. 一次发现underscore源码bug的经历以及对学术界『拿来主义』的思考
  3. 使用 WRK 压力测试工具对 ASP.NET Core 的接口进行压力测试
  4. 网关转发其他微服务后头信息拿不到_微服务之基于Zuul自研服务网关
  5. 借贷行业,还有明天吗?
  6. iOS设置App的名称和简单的版本国际化与本地化
  7. oracle 白鳝 row cache lock,ROW CACHE LOCK导致数据库CPU高案例分析
  8. Ubuntu查找文件
  9. wps合并重复项并求和_如何在excel合并同类项数据并求和(去除重复项)
  10. Github删除历史提交记录的方法
  11. 基于Python构建机器学习Web应用
  12. CANopen dsp402 对象字典 603F 错误码
  13. 研发和测试在多国陆续展开 全球央行数字货币研发驶入快车道
  14. python保留两位小数_python格式化输出保留2位小数的实现方法
  15. 目前云计算的优势,主要有哪些?
  16. STM32F10xxx20xxx21xxxL1xxxx Cortex-M3程序设计手册 阅读笔记二(1):Cortex-M3处理器程序模型
  17. 【Python_PyQtGraph 学习笔记(四)】基于PyQtGraph设置槽函数,实现保存图片到本地的功能
  18. 服务器开机grub gt 命令修复方法,开机grubgt命令修复方法
  19. 孪生素数(与质数的后代有联系
  20. Oracle特殊字符转义:和'

热门文章

  1. Android----Google code android开源项目(四)
  2. 26个提升java性能需要注意的地方
  3. 如何做个人职业规划和年度计划
  4. C:\WINDOWS\Installer文件夹的安全清理
  5. 提升面对电脑的工作效率
  6. char data[0]用法总结
  7. module_param 在内核编程中的作用
  8. X264码率控制流程分析 (转)
  9. # 遍历删除字典元素_第六章 字典
  10. 图卷积神经网络_深度层次化图卷积神经网络