程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php發送與接收流文件的方法

php發送與接收流文件的方法

編輯:關於PHP編程

     這篇文章主要介紹了php發送與接收流文件的方法,實例分析了php針對流文件的常見操作技巧,需要的朋友可以參考下

       

    本文實例講述了php發送與接收流文件的方法。分享給大家供大家參考。具體如下:

    sendStreamFile.php 把文件以流的形式發送
    receiveStreamFile.php 接收流文件並保存到本地

    sendStreamFile.php文件:

    代碼如下: <?php
    /** php 發送流文件
    * @param String $url 接收的路徑
    * @param String $file 要發送的文件
    * @return boolean
    */
    function sendStreamFile($url, $file){
    if(file_exists($file)){
    $opts = array(
    'http' => array(
    'method' => 'POST',
    'header' => 'content-type:application/x-www-form-urlencoded',
    'content' => file_get_contents($file)
    )
    );
    $context = stream_context_create($opts);
    $response = file_get_contents($url, false, $context);
    $ret = json_decode($response, true);
    return $ret['success'];
    }else{
    return false;
    }
    }
    $ret = sendStreamFile('http://localhost/receiveStreamFile.php','send.txt');
    var_dump($ret);
    ?>

     

    receiveStreamFile.php文件:

    代碼如下: <?php
    /** php 接收流文件
    * @param String $file 接收後保存的文件名
    * @return boolean
    */
    function receiveStreamFile($receiveFile){
    $streamData = isset($GLOBALS['HTTP_RAW_POST_DATA'])? $GLOBALS['HTTP_RAW_POST_DATA'] : '';

    if(empty($streamData)){
    $streamData = file_get_contents('php://input');
    }

    if($streamData!=''){
    $ret = file_put_contents($receiveFile, $streamData, true);
    }else{
    $ret = false;
    }
    return $ret;
    }
    $receiveFile = 'receive.txt';
    $ret = receiveStreamFile($receiveFile);
    echo json_encode(array('success'=>(bool)$ret));
    ?>

     

    希望本文所述對大家的php程序設計有所幫助。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved