PHP获取远程文件的几种方式

本文介绍了PHP获取远程文件的四种方法:fopen用于创建流并读取;file_get_contents适用于GET和POST请求,支持断点续传;socket提供底层网络通信;cURL功能最强大,可保存COOKIES用于模拟登陆,常用于网络爬虫。
摘要由CSDN通过智能技术生成

layout: post
title: "PHP获取远程文件的几种方式"
date: 2016-05-18 14:18:15 +0800
comments: true
categories: [php]


接上次的内容,今天结合代码来分析下PHP获取远程文件的几种方式。

  • fopen
    • 获取本地文件
    • 获取到的资源绑定到一个流上面
  • file_get_centents
    • 获取一些Get获得的数据,也可以POST,
    • 可以做断点续传
  • socket
  • curl
    • 可以保存cookie 并且在下一次发送出去
    • 做模拟登陆

fopen

<?php 
    require_once('common.php');
    echo "<h2>fopen获取文件测试</h2>";
    /*fopen打开本地文件*/
    $filename="test.html";
    $fp=fopen($filename,"r+");//r+ 只读,+表示如果不存在则创建
    $fc="";
    while(!feof($fp)){
        $fc.=fgets($fp,1024);//获取到的资源绑定到流上。这样来获取流数据
        }
    fclose($fp);
    echo "<h4>输出http_response_header</h4>";
    dumpout($http_response_header); 
    echo "<h3>本地文件:".$fc."</h3>";
    
    /*fopen打开远程url*/
    $filename="http://localhost/Login/02/test.html";
    $fp=fopen($filename,"r");
    echo "<h4>输出stream_get_meta_data</h4>";
    dumpArr(stream_get_meta_data($fp));
    $fc="";
    while(!feof($fp)){
        $fc=fgets($fp,1024);
        }
    fclose($fp);
    echo "<h4>输出http_response_header</h4>";
    dumpout($http_response_header);
    echo "<h3>远程url:".$fc."</h3>";
 
?>

file_get_centents

<?php 
    require_once('common.php');
    echo "<h2>file_get_contents获取文件测试</h2>";
    /*file_get_contents打开本地文件*/
    $filename="test.html";
    $fc=file_get_contents($fil
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值