关于php文件二进制数据流处理

紫色田园 2014-06-24 10:57:06
我现在遇到个问题,请教各位老大。
我现在有一张.jpg的图片,我通过
$data_buff=file_get_contents($filepath);
得到二进制数据流,问题来了我现想将这二进制数据流通过curl传送至另一台服务器上,现在那台服务器的程序接收到的却是一个null。这是为何?是不是要在发送前对二进制数据做转换或转义处理,还请老大指教!
...全文
587 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
傲雪星枫 2014-08-01
  • 打赏
  • 举报
回复

$data_buff=base64_encode(file_get_contents($filepath));
先轉base64_encode,傳過去后再base64_decode即可。
十三- 2014-07-31
  • 打赏
  • 举报
回复
urlencode($data_buff) 进行URL加密试试。 然后,那边服务器解密一下。
xuzuning 2014-06-24
  • 打赏
  • 举报
回复
二进制数据应做 base64 编码 不太清楚你的场景,说不了细节 如果你是要上传 $filepath 这个文件的话,那么只需选择 POST 方式,参数串为 "file=@$filepath" 就可以了($filepath 要是绝对路径的)
紫色田园 2014-06-24
  • 打赏
  • 举报
回复
$param=array( 'binData'=>$data_buff, 'type'=>'image', 'format'=>'JPG' ); $post_data= json_encode($param); curl一共传了三个参数,接收方收到的binData是null值,其它两个接收正常!

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧