php base64编码 加解密 手动实现


base64编码原理

GB_2312 字符集是目前最常用的汉字编码标准。在这个标准中,每个汉字用2个字节来表示,每个字节的ascii码为 161-254 (16 进制A1 - FE),第一个字节 对应于 区码的1-94 区,第二个字节 对应于位码的1-94 位。

汉字的unicode 编码范围为 \u4e00 ~ \u94a5

UTF-8 字符集中一个汉字站三个字节: 参考链接
";
echo base64_decode($base);
echo "
"; $code = encode64($str); echo $code,"
"; echo $decode = decode64($code); function encode64($str){ $base64 = implode("",range('A','Z')).implode("",range('a','z')).implode("",range('0','9'))."+/"; if($str=="") return false; $binStr = StrToBin($str); $more = 0; $encodeStr = ""; for($i=0;$i 8 二进制还原 $binStr = substr($binStr,0,strlen($binStr)-$more*2); return BinToStr($binStr); } function StrToBin($str){ $arr = preg_split("/(? 0 && $mod < 8) $bin8 = str_repeat("0",$mod).$bin8; $binStr .= $bin8; } return $binStr; } function BinToStr($str){ $binArr = array();$index=0;$index2=0; for($i=0;$i$v){ $hex = base_convert($v, 2, 16); $v = pack("H".strlen($hex),$hex); $deArr[$k] = $v; } return join("",$deArr); }

你可能感兴趣的:(php)