可以的。
成都创新互联专业为企业提供镇安网站建设、镇安做网站、镇安网站设计、镇安网站制作等企业网站建设、网页设计与制作、镇安企业网站模板建站服务,10年镇安做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
可以用一个十进制二进制的函数decbin(),生成的是一个字符串,直接输出即可
$content = $_POST['data'];
$fp = fopen('/tmp/newfile.bin','w');
fwrite($fp,$content);
以上例子是在data参数上传二进制,并保存到/tmp/newfile.bin中,解析json用json_decode,然后把二进制的那个值赋给content就可以
十六进制转为二进制有两种理解方法,第一是十六进制字符串转二进制字符串,第二是十六进制数转二进制数,下面分别介绍2种转换方法:
1.hex2bin函数可以将十六进制字符串转换为二进制字符串,详细用法如下:
hex2bin — 转换十六进制字符串为二进制字符串
string hex2bin(string $data)
转换十六进制字符串为二进制字符串。
参数:
data:十六进制表示的数据
返回值:
返回给定数据的二进制表示 或者在失败时返回 FALSE。
异常:
如果输入的十六进制字符串是奇数长数或者无效的十六进制字符串将会抛出E_WARNING 级别的错误。
示例:
$hex = hex2bin("6578616d706c65206865782064617461");
echo $hex;//example hex data(其中16进制代表的是ascii码)
2.base_convert是真正意义上的进制转换函数
base_convert — 在任意进制之间转换数字
string base_convert( string $number, int $frombase, int $tobase)
返回一字符串,包含 number以 tobase 进制的表示。number 本身的进制由frombase指定。frombase 和 tobase 都只能在2 和 36 之间(包括 2 和 36)。高于十进制的数字用字母 a-z 表示,例如a 表示 10,b 表示 11 以及 z 表示 35。
参数:
number:要转换的数字
frombase:原始进制
tobase:转换后的进制
示例:
$hexadecimal = 'A37334';
echo base_convert($hexadecimal, 16, 2);//101000110111001100110100
需要准备的材料分别是:电脑、php编辑器、浏览器。
1、首先,打开php编辑器,新建php文件,例如:index.php。
2、以二进制数1110101为例,在index.php中,输入代码:$a = 0b1110101;echo $a;。
3、浏览器运行index.php页面,此时会看到二进制数1110101被成功表示,并以十进制形式打印了出来。
二进制流和字符串流的解析是不一样的,你用解析字符串的方式来解析二进制的东西肯定不行啊,你可以设置,header('Content:image/png');设置文件的类型,后面直接echo 你读出来的文件.png改成你对应的图片格式,用浏览器来解析.
名称栏目:php解析二进制数据 php生成二进制数据流
分享URL:https://www.cdcxhl.com/article44/doceihe.html
成都网站建设公司_创新互联,为您提供商城网站、网站设计公司、品牌网站制作、网站营销、网站导航、网站策划
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联