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实现验证码功能
Oct 09 PHP
PHP中,文件上传
Dec 06 PHP
PHP初学者最感迷茫的问题小结
Mar 27 PHP
PHP常用特殊运算符号和函数总结(php新手入门必看)
Feb 02 PHP
解析php下载远程图片函数 可伪造来路
Jun 25 PHP
PHP使用json_encode函数时不转义中文的解决方法
Nov 12 PHP
Laravel框架实现发送短信验证功能代码
Jun 06 PHP
php性能分析之php-fpm慢执行日志slow log用法浅析
Oct 17 PHP
php实现统计二进制中1的个数算法示例
Jan 23 PHP
php命名空间设计思想、用法与缺点分析
Jul 17 PHP
调试php程序的简单步骤
Oct 04 PHP
laravel5.6 框架邮件队列database驱动简单demo示例
Jan 26 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简单提示框alert封装函数
2010/08/08 PHP
再推荐十款免费的php开发工具
2015/11/09 PHP
PHP创建word文档的方法(平台无关)
2016/03/29 PHP
分享一个自己写的table表格排序js插件(高效简洁)
2011/10/29 Javascript
jquery next nextAll nextUntil siblings的区别介绍
2013/10/05 Javascript
js给页面加style无效果的解决方法
2014/01/20 Javascript
js判断元素是否隐藏的方法
2014/06/09 Javascript
关闭页面window.location事件未执行的原因及解决方法
2014/09/01 Javascript
JS实现定时自动关闭DIV层提示框的方法
2015/05/11 Javascript
js鼠标点击图片切换效果代码分享
2015/08/26 Javascript
Jquery操作Ajax方法小结
2015/11/29 Javascript
Node.js模块封装及使用方法
2016/03/06 Javascript
JS实现弹出居中的模式窗口示例
2016/06/20 Javascript
Bootstrap Validator 表单验证
2016/07/25 Javascript
Vue.js自定义指令的用法与实例解析
2017/01/18 Javascript
PHP7新特性简述
2017/06/11 Javascript
react.js使用webpack搭配环境的入门教程
2017/08/14 Javascript
vue+element实现批量删除功能的示例
2018/02/28 Javascript
纯js封装的ajax功能函数与用法示例
2018/05/14 Javascript
element ui table 增加筛选的方法示例
2018/11/02 Javascript
Vue Autocomplete 自动完成功能简单示例
2019/05/25 Javascript
自己使用总结Python程序代码片段
2015/06/02 Python
《Python学习手册》学习总结
2018/01/17 Python
Python类中self参数用法详解
2020/02/13 Python
PyCharm 在Windows的有用快捷键详解
2020/04/07 Python
python交互模式基础知识点学习
2020/06/18 Python
Python中Qslider控件实操详解
2021/02/20 Python
Myprotein蛋白粉美国官网:欧洲畅销运动营养品牌
2016/11/15 全球购物
全球最大的服务市场:Fiverr
2017/01/03 全球购物
内部类的定义、种类以及优点
2013/10/16 面试题
中专自我鉴定范文
2013/10/16 职场文书
2014最新毕业证代领委托书
2014/09/26 职场文书
群众路线党员个人剖析材料
2014/10/08 职场文书
2015年社区中秋节活动总结
2015/03/23 职场文书
班主任开场白
2015/06/01 职场文书
一行Python命令实现批量加水印
2022/04/07 Python