php发送与接收流文件的方法


Posted in PHP onFebruary 11, 2015

本文实例讲述了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读取流文件

$filepath = 'http://www.vip.com/down';
$fp = fopen($filepath,"r");
Header("Content-type: application/octet-stream");
Header("Accept-Ranges: bytes");
Header("Content-Disposition: attachment; filename=xxx.pdf");
$buffer = 1024;
while (!feof($fp)) {
$file_con = fread($fp,$buffer);
  echo $file_con;
}
fclose($fp);

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
用PHP实现的生成静态HTML速度快类库
Mar 31 PHP
PHP 加密与解密的斗争
Apr 17 PHP
php基于表单密码验证与HTTP验证用法实例
Jan 06 PHP
php实现四舍五入的方法小结
Mar 03 PHP
PHP经典面试题集锦
Mar 19 PHP
简单谈谈PHP vs Node.js
Jul 17 PHP
全面了解PHP中的全局变量
Jun 17 PHP
mac下多个php版本快速切换的方法
Oct 09 PHP
PHP实现的XML操作类【XML Library】
Dec 29 PHP
thinkPHP实现签到功能的方法
Mar 15 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
Jun 14 PHP
laravel5表单唯一验证的实例代码
Sep 30 PHP
php实现上传图片保存到数据库的方法
Feb 11 #PHP
php使用curl获取https请求的方法
Feb 11 #PHP
php+html5使用FormData对象提交表单及上传图片的方法
Feb 11 #PHP
php判断并删除空目录及空子目录的方法
Feb 11 #PHP
php获取YouTube视频信息的方法
Feb 11 #PHP
php实现图片局部打马赛克的方法
Feb 11 #PHP
php实现获取文件mime类型的方法
Feb 11 #PHP
You might like
php下通过IP获取地理位置的代码(小偷程序)
2011/06/09 PHP
浅析is_writable的php实现
2013/06/18 PHP
php将图片保存为不同尺寸图片的图片类实例
2015/03/30 PHP
Laravel5.1 框架响应基本用法实例分析
2020/01/04 PHP
Avengerls vs KG BO3 第二场2.18
2021/03/10 DOTA
js location.replace与location.reload的区别
2010/09/08 Javascript
JQuery.closest(),parent(),parents()寻找父结点
2012/02/17 Javascript
jQuery 菜单随滚条改为以定位方式(固定要浏览器顶部)
2012/05/24 Javascript
基于jquery编写的横向自适应幻灯片切换特效的实例代码
2013/08/06 Javascript
javascript的列表切换【实现代码】
2016/05/03 Javascript
vue2.0实现导航菜单切换效果
2017/05/08 Javascript
vue2里面ref的具体使用方法
2017/10/27 Javascript
原生javascript制作的拼图游戏实现方法详解
2020/02/23 Javascript
Vue实现点击导航栏当前标签后变色功能
2020/08/19 Javascript
python中随机函数random用法实例
2015/04/30 Python
在PyCharm下打包*.py程序成.exe的方法
2018/11/29 Python
Python检查和同步本地时间(北京时间)的实现方法
2018/12/03 Python
python实现合并两个排序的链表
2019/03/03 Python
Python猴子补丁Monkey Patch用法实例解析
2020/03/23 Python
pandas apply使用多列计算生成新的列实现示例
2021/02/24 Python
激光脱毛、蓝光和护肤:Tria Beauty
2019/03/28 全球购物
Arti-shopping中文官网:大型海外商品一站式直邮平台
2020/03/23 全球购物
我看到了用指针调用函数的不同语法形式
2014/07/16 面试题
总经理助理的八要求
2013/11/12 职场文书
《狐假虎威》教学反思
2014/02/07 职场文书
办公室副主任职责范本
2014/03/08 职场文书
关于孝道的演讲稿
2014/05/21 职场文书
保卫钓鱼岛口号
2014/06/20 职场文书
党员志愿者活动总结
2014/06/26 职场文书
新学期红领巾广播稿
2014/10/04 职场文书
党的群众路线教育实践活动对照检查剖析材料
2014/10/09 职场文书
老员工辞职信范文
2015/05/12 职场文书
推销搭讪开场白
2015/05/28 职场文书
大队委员竞选演讲稿
2015/11/20 职场文书
Python中的turtle画箭头,矩形,五角星
2022/03/16 Python
Golang map映射的用法
2022/04/22 Golang