php发送 与接收流文件

PHP 发送与接收流文件

sendStreamFile.php 把文件以流的形式发送

receiveStreamFile.php 接收流文件并保存到本地

sendStreamFile.php

  1. <?php
  2. /** php 发送流文件
  3. * @param  String  $url  接收的路径
  4. * @param  String  $file 要发送的文件
  5. * @return boolean
  6. */
  7. function sendStreamFile($url, $file){
  8. if(file_exists($file)){
  9. $opts = array(
  10. ‘http‘ => array(
  11. ‘method‘ => ‘POST‘,
  12. ‘header‘ => ‘content-type:application/x-www-form-urlencoded‘,
  13. ‘content‘ => file_get_contents($file)
  14. )
  15. );
  16. $context = stream_context_create($opts);
  17. $response = file_get_contents($url, false, $context);
  18. $ret = json_decode($response, true);
  19. return $ret[‘success‘];
  20. }else{
  21. return false;
  22. }
  23. }
  24. $ret = sendStreamFile(‘http://localhost/fdipzone/receiveStreamFile.php‘, ‘send.txt‘);
  25. var_dump($ret);
  26. ?>

receiveStreamFile.php

  1. <?php
  2. /** php 接收流文件
  3. * @param  String  $file 接收后保存的文件名
  4. * @return boolean
  5. */
  6. function receiveStreamFile($receiveFile){
  7. $streamData = isset($GLOBALS[‘HTTP_RAW_POST_DATA‘])? $GLOBALS[‘HTTP_RAW_POST_DATA‘] : ‘‘;
  8. if(empty($streamData)){
  9. $streamData = file_get_contents(‘php://input‘);
  10. }
  11. if($streamData!=‘‘){
  12. $ret = file_put_contents($receiveFile, $streamData, true);
  13. }else{
  14. $ret = false;
  15. }
  16. return $ret;
  17. }
  18. $receiveFile = ‘receive.txt‘;
  19. $ret = receiveStreamFile($receiveFile);
  20. echo json_encode(array(‘success‘=>(bool)$ret));
  21. ?>
时间: 2024-10-27 11:09:42

php发送 与接收流文件的相关文章

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:applic

如何通过Socket TCP发送并接收一个文件?

一.小结 1.大包发小包收,只发一次. 2.发时把文件扩展名,文件长度也随同一起发送,方便接收端接收时另存为正确的文件类型,并判断是否已经接收完毕. 如果不一起发送,分为文件扩展名,文件长度,文件内容,发送三次,在接收端,也可能会一起收到,反而不利于解析. 二.客户发送端代码 private void btnSend_Click(object sender, EventArgs e) { //组合出远程终结点 IPAddress ipAddress = IPAddress.Parse(this.

C#Socket文件传输(发送与接收代码)

这里是发送的代码: SendVarData是转码后发送函数 1 /// <summary> 2 /// 发送文件 3 /// </summary> 4 /// <param name="userName"></param> 5 private void SendFileToClient(string userName) 6 { 7 User targetUser = userListDict[userName]; 8 String tar

深度分析:Android4.3下MMS发送到附件为音频文件(音频为系统内置音频)的彩信给自己,添加音频-发送彩信-接收彩信-下载音频附件-预览-播放(二,发送彩信&lt;1&gt;)

当准备工作(添加附件,输入文本内容)完成之后,我们这里开始进行该流程分析的第二阶段,也就是发送彩信.这里我们从ComposeMessageActivity类的点击发送按钮(mSendButtonMms)的点击事件开始:<TAG 1-1> @Override public void onClick(View v) { if (mShowTwoButtons && (v == mSendButtonSmsViewSec || v == mSendButtonMmsViewSec)

解决android自带蓝牙不能发送接收某些文件类型

最近,遇到一个蓝牙的bug,刚开始以为不能发送大的文件,最后追踪代码发现,是不能发送某些文件类型的文件的. 默认之支持所有图片,所有视频,所有音频,文本类型,html,zip,excel,word,ppt,pdf等类型. 要想让其支持你要发送/接收的文件类型需要在相应地方添加相应的类型. 发送的文件类型,需要修改package/app/bluetooth目录下的AndroidManifest.xml文件的<data android:mimeType="" />, 添加相应的

DICOM医学图像处理:DIMSE消息发送与接收“大同小异”之DCMTK fo-dicom mDCM

背景: 从DICOM网络传输一文开始,相继介绍了C-ECHO.C-FIND.C-STORE.C-MOVE等DIMSE-C服务的简单实现,博文中的代码给出的实例都是基于fo-dicom库来实现的,原因只有一个:基于C#的fo-dicom库具有高封装性.对于初学者来说实现大多数的DIMSE-C.DIMSE-N服务几乎都是"傻瓜式"操作--构造C-XXX-RQ.N-XXX-RQ然后绑定相应的OnResponseReceived处理函数即可.本博文希望在前几篇预热的基础上,对比DCMTK.fo

Chromium的IPC消息发送、接收和分发机制分析

由于Chromium采用多进程架构,因此会涉及到进程间通信问题.通过前面一文的学习,我们知道Browser进程在启动Render进程的过程中会建立一个以UNIX Socket为基础的IPC通道.有了IPC通道之后,接下来Browser进程与Render进程就以消息的形式进行通信.我们将这种消息称为IPC消息,以区别于线程消息循环中的消息.本文就分析Chromium的IPC消息发送.接收和分发机制. 老罗的新浪微博:http://weibo.com/shengyangluo,欢迎关注! Chrom

Udp广播的发送和接收(ios+AsyncUdpSocket)下篇

接上篇C#的Udp广播的发送和接收 http://www.cnblogs.com/JimmyBright/p/4637090.html ios中使用AsyncUdpSocket处理Udp的消息非常方便 准备工作: 在github上找到cocoaAsyncSocket,下载下来,把其中AsyncUdpSocket.h和AsyncUdpSocket.m文件copy到你的项目中,其他文件都不需要.copy到swift环境下会自动提示创建桥接文件,点击确认就可以了. 发送Udp: 上面代码对局域网广播消

Android Java使用JavaMail API发送和接收邮件的代码示例

JavaMail是Oracle甲骨文开发的Java邮件类API,支持多种邮件协议,这里我们就来看一下Java使用JavaMail API发送和接收邮件的代码示例 使用Javamail发送邮件,必需的jar包(请下载javamail的源文件,官方下载页:http://www.oracle.com/technetwork/java/javamail/index-138643.html):mailapi.jar.定义了收发邮件所使用到的接口API:smtp.jar.包含了发送邮件使用到的类:pop3.