本篇文章给大家分享的是有关利用PHP怎么对UTF8二进制与明文字符串进行转换,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
具体如下:
<?php
/***********本程序由云客编写。有空的时候承接php软件开发
*满足一下新手们的好奇心,看看UTF-8的二进制是什么样子滴
****************************/
define("b", "<br>");
$a = "FE";
$a1 = "FF";
$s = 16;
$e = 2;
echo $s . "进制的" . $a . "表示为" . $e . "进制是" . base_convert($a, $s, $e) . b;
echo $s . "进制的" . $a1 . "表示为" . $e . "进制是" . base_convert($a1, $s, $e) . b;
$str = "计算机rr我们是谁?";
$strlen = strlen($str);
$n = 0;
echo $str.'(二进制UTF-8表示):'.b;
$str_bin='';
while ($n < $strlen)
{
$t = ord($str[$n]);
$stra=base_convert($t, 10, 2) ;
if(strlen($stra)<8)
{
$stra="0".$stra;
}
$str_bin.=$stra;
$n++;
}
echo $str_bin.b;//已经翻译为二进制了
$str_bin="1110100010101110101000011110011110101110100101111110011010011100101110100110000101110011111001101000100010010001111001001011101110101100111001101001100010101111111010001011000010000001111011111011110010011111"; //在此输入二进制,程序编码为明文输出
$chr='';
$str='';
for($i=0;$i<strlen($str_bin);$i++)
{
$chr.=$str_bin[$i];
if(($i+1)%8==0)
{
$str.=chr(base_convert($chr, 2, 10));
$chr=NULL;
}
}
echo $str;//二进制的UTF8原代码明文
?>
运行结果:
16进制的FE表示为2进制是11111110
16进制的FF表示为2进制是11111111
计算机rr我们是谁?(二进制UTF-8表示):
1110100010101110101000011110011110101110100101111110011010011100101110100111001001110010111001101000100010010001111001001011101110101100111001101001100010101111111010001011000010000001111011111011110010011111
计算机as我们是谁?
以上就是利用PHP怎么对UTF8二进制与明文字符串进行转换,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。