PHP实现UTF8二进制及明文字符串的转化功能示例

yipeiwu_com7年前PHP代码库

本文实例讲述了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我们是谁?

PS:这里再为大家推荐几款相关在线编码转换工具供大家参考使用:

UTF-8编码转换工具:
http://tools.jb51.net/transcoding/convutf

在线编码转换工具(utf-8/utf-32/Punycode/Base64):
http://tools.jb51.net/transcoding/decode_encode_tool

Native/UTF-8在线编码转换工具:
http://tools.jb51.net/transcoding/native2utf8

在线任意进制转换工具:
http://tools.jb51.net/transcoding/hexconvert

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP编码与转码操作技巧汇总》、《php面向对象程序设计入门教程》、《PHP数学运算技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php正则表达式用法总结》、及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php 采集书并合成txt格式的实现代码

<?php /** * @name 采集书.php * @date Sun Mar 01 22:48:02 CST 2009 * @copyright 马永占(MyZ) * @au...

浅析php静态方法与非静态方法的用法区别

在php编程中,static关键字声明一个属性或方法是和类相关的,而不是和类的某个特定的实例相关,因此,这类属性或方法也称为“类属性”或“类方法” 如果访问控制权限允许,可不必创建该类对...

yii 2.0中表单小部件的使用方法示例

前言 本文主要介绍的是关于yii 2.0中表单小部件使用的相关内容,分享出来供大家参考学习,下面来看看详细的介绍: 使用方法 首先创建model层,因为要使用表单小部件 所以要加载相应的...

php中关于长度计算容易混淆的问题分析

本文实例讲述了php中关于长度计算容易混淆的问题。分享给大家供大家参考,具体如下: 经常被php中数组和字符串的字符函数搞晕,下面总结一下: strlen($string)函数:计算字符...

PHP实现将textarea的值根据回车换行拆分至数组

本文实例讲述了PHP实现将textarea的值根据回车换行拆分至数组的方法。分享给大家供大家参考。具体分析如下: textarea回车换行为 \r\n $keyword_list =...