php 实现base64编码与解码
2017-05-16 23:07:17
•
阅读
打赏
本文主要介绍了php 实现base64编码与解码实例代码的知识文章,需要的朋友参考下
base64
Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。
Base64编码要求把3个8位字节(3*8=24)转化为4个6位的字节(4*6=24),之后在6位的前面补两个0,形成8位一个字节的形式。
如果剩下的字符不足3个字节,则用0填充,输出字符使用'=',因此编码后输出的文本末尾可能会出现1或2个'='。
Base64编码,在末尾填充'='号,并将标准Base64中的“+”和“/”分别改成了“-”和“_”,免去了在URL编解码和数据库存储时所要作的转换,
避免了编码信息长度在此过程中的增加,并统一了数据库、表单等处对象标识符的格式
自定义规则方式编码和解码
实例
function changIntToStr($value)
{
$intStr = '';
$str = "Y 9 L F k g y 5 R o v i x I 1 a O f 8 U h d s 3 r 4 D M p l Q Z J X P q e b E 0 W S j B n 7 w V z m N 2 G c 6 T H C A K u t";
$seq = explode(" ", $str);
$intvalue = $value;
while ($intvalue >= 62) {
$intStr = ($seq[$intvalue % 62]) . $intStr;
$intvalue = (int)($intvalue / 62);
}
$intStr = ($seq[$intvalue]) . $intStr;
echo($intStr);
$keySeq = array_flip($seq);
$length = strlen($intStr);
$value = 0;
for ($i = $length - 1; $i >= 0; $i--) {
$t = $keySeq[$intStr[$i]];
$s = ($length - $i) - 1;
$m = (pow(62, $s) * $t);
$value += $m;
}
echo $value;
}
PHP系统函数完成base64位的编码和解码
gmp_init,base64_encode,base64_decode
参考:http://dev.yuqingqi.com/urlencode/
实例
$value = gmp_strval(gmp_init('12',10),62);
$re = gmp_strval(gmp_init($value,62),10);
echo $re;
以上就是本文php 实现base64编码与解码的全部内容,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关推荐
深度学习 -- 损失函数
深度残差网络(Deep Residual Networks (ResNets))
深度学习 -- 激活函数
神经网络训练 -- 调整学习速率
生成对抗网络(GAN)改进与发展
生成对抗网络(GAN)优点与缺点
生成对抗网络(GAN)的训练
生成对抗网络(GAN)基本原理
生成模型与判别模型