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 相关文章推荐
打造计数器DIY三步曲(中)
Oct 09 PHP
分享PHP入门的学习方法
Jan 02 PHP
百度ping方法使用示例 自动ping百度
Jan 26 PHP
php使用smtp发送支持附件的邮件示例
Apr 13 PHP
php判断GIF图片是否为动画的方法
Sep 04 PHP
php实现的SESSION类
Dec 02 PHP
php查看网页源代码的方法
Mar 13 PHP
php实现转换ubb代码的方法
Jun 18 PHP
以实例全面讲解PHP中多进程编程的相关函数的使用
Aug 18 PHP
php 读取输出其他文件的实现方法
Jul 26 PHP
解决PHP上传非标准格式的图片pjpeg失败的方法
Mar 12 PHP
PHP iconv()函数字符编码转换的问题讲解
Mar 22 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
如何去掉文章里的 html 语法
2006/10/09 PHP
PHP静态新闻列表自动生成代码
2007/06/14 PHP
请php正则走开
2008/03/15 PHP
Yii2中hasOne、hasMany及多对多关联查询的用法详解
2017/02/15 PHP
详解Yii2.0 rules验证规则集合
2017/03/21 PHP
新手入门常用代码集锦
2007/01/11 Javascript
javascript prototype 原型链
2009/03/12 Javascript
用javascript读取xml文件读取节点数据
2014/08/12 Javascript
文本框倒叙输入让输入框的焦点始终在最开始的位置
2014/09/01 Javascript
Windows系统下Node.js的简单入门教程
2015/06/23 Javascript
JavaScript人脸识别技术及脸部识别JavaScript类库Tracking.js
2015/09/14 Javascript
基于jQuery和CSS3制作数字时钟附源码下载(jquery篇)
2015/11/24 Javascript
jQuery on()方法绑定动态元素的点击事件实例代码浅析
2016/06/16 Javascript
JS实现获取剪贴板内容的方法
2016/06/21 Javascript
基于jquery实现二级联动效果
2017/03/30 jQuery
Vue实现左右菜单联动实现代码
2018/08/12 Javascript
vue项目配置使用flow类型检查的步骤
2020/03/18 Javascript
日常整理python执行系统命令的常见方法(全)
2015/10/22 Python
Python实现MySQL操作的方法小结【安装,连接,增删改查等】
2017/07/12 Python
强悍的Python读取大文件的解决方案
2019/02/16 Python
TensorFlow绘制loss/accuracy曲线的实例
2020/01/21 Python
使用 Python 遍历目录树的方法
2020/02/29 Python
pytorch判断是否cuda 判断变量类型方式
2020/06/23 Python
pycharm-professional-2020.1下载与激活的教程
2020/09/21 Python
简单了解Python字典copy与赋值的区别
2020/09/16 Python
C语言中break与continue的区别
2012/07/12 面试题
MIS软件工程师的面试题
2016/04/22 面试题
EJB的几种类型
2012/08/15 面试题
Java程序开发中如何应用线程
2016/03/03 面试题
乔迁宴答谢词
2014/01/21 职场文书
《乡下孩子》教学反思
2014/04/17 职场文书
2014年新生军训方案
2014/05/01 职场文书
大气污染防治方案
2014/05/19 职场文书
2014教师研修学习体会
2014/07/08 职场文书
世界气象日活动总结
2015/02/27 职场文书
安全教育片观后感
2015/06/17 职场文书