永发信息网

PHP关于获取二进制数据流转换为文件的方法

答案:2  悬赏:0  手机版
解决时间 2021-03-22 17:23
  • 提问者网友:缘字诀
  • 2021-03-21 17:21
对方通过POST传送过来一个JSON格式的数组,数组内容为一个文件的二进制数据流,我获取到后该怎么解析成为一个文件并保存到目标路径呢
最佳答案
  • 五星知识达人网友:大漠
  • 2021-03-21 18:02
$bin= bstr2bin($json);
file_put_contents('../somefold/',$bin);

function bstr2bin($input){
// Binary representation of a binary-string
if (!is_string($input)) return null; // Sanity check
// Unpack as a hexadecimal string
$value = unpack('H*', $input);

// Output binary representation
$value = str_split($value[1], 1);
$bin = '';
foreach ($value as $v){
$b = str_pad(base_convert($v, 16, 2), 4, '0', STR_PAD_LEFT);

$bin .= $b;
}

return $bin;
全部回答
  • 1楼网友:蓝房子
  • 2021-03-21 19:03
$content = $_post['data']; $fp = fopen('/tmp/newfile.bin','w'); fwrite($fp,$content);以上例子是在data参数上传二进制,并保存到/tmp/newfile.bin中,解析json用json_decode,然后把二进制的那个值赋给content就可以
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯