php如何拼接二进制数据成字符串?

WBOY
Lepaskan: 2016-06-23 14:20:01
asal
1607 orang telah melayarinya

二进制 php utf-8 编码

比如字符“你”的utf8 编码是“E4BDA0”。
现在有一数组$arr
$arr = array(chr(228), chr(189), chr(160));
Salin selepas log masuk

如何将其拼接成一块,可以让其打印出字符“你”?
求帮助


回复讨论(解决方案)

$arr = array(chr(228), chr(189), chr(160));echo join('', $arr); //你foreach($arr as $v) echo $v;for($i=0; $i<count($arr); $i++) echo $arr[$i];
Salin selepas log masuk
Salin selepas log masuk


echo pack('H*', 'E4BDA0');echo hex2bin('E4BDA0');
Salin selepas log masuk
Salin selepas log masuk

$arr = array(chr(228), chr(189), chr(160));echo join('', $arr); //你foreach($arr as $v) echo $v;for($i=0; $i<count($arr); $i++) echo $arr[$i];
Salin selepas log masuk
Salin selepas log masuk


echo pack('H*', 'E4BDA0');echo hex2bin('E4BDA0');
Salin selepas log masuk
Salin selepas log masuk

谢谢~下面两个可行~
奇怪的是我昨天用join打印出来是三个字符~今天竟然join可用了~
就是不知道join性能怎么样~

join 在内部做循环,肯定比你在代码中做循环来的快

join 在内部做循环,肯定比你在代码中做循环来的快
我在改进一个模板引擎,之前就发过两个贴子问正则表达式匹配标签的问题~未果
无奈,我决定自己写个语法分析器~可惜PHP不支持指针和内存拷贝等高性能的东西,不知道用这种方法弄出来性能会损失多少~

不能因为“耽心”而畏首畏尾
性能是比较出来的,你总得多做几个方案。
有比较才能有鉴别!

php 是解释执行的,每一条指令都需要花费一点时间的
循环也多,时间愈多。递归也是循环
识别模式,字符串函数循环优于正则
能用迭代器就不自己循环
......

不能因为“耽心”而畏首畏尾
性能是比较出来的,你总得多做几个方案。
有比较才能有鉴别!

php 是解释执行的,每一条指令都需要花费一点时间的
循环也多,时间愈多。递归也是循环
识别模式,字符串函数循环优于正则
能用迭代器就不自己循环
......
谢谢~十分感谢~

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!