php使用Base64加密解密URL地址教程
要知道Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,看好是 编码 ,并不是 加密 。
编码过程不解释了,Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3*8 = 4*6 = 24),然后把6Bit再添两位高位0,组成四个8Bit的字节,也就是说,转换后的字符串理论上将要比原来的长1/3。
php用base64_encode() 编码的数据要比原始数据多占用 33% 左右的空间。
格式是大小写字母、数字、“=”号、“+”号和“/”号
但“=”等号最多只有两个
正则匹配就是 【 [a-zA-Z0-9=+/]+ 】
所以看到有大小写字母的字符串并且有一个或两个等号结束的。基本可以判断是base64编码
base64不适合直接放在URL里作为参数传输,发现base64编码中有“/” “=”符号。为解决此问题,可采用一种用于URL的改进Base64编码,它不在末尾填充'='号,并将标准Base64中的“+”和“/”分别改成了“_”和“-”,这样就免去了在URL编解码和数据库存储时所要作的转换。
通过下面的函数,完美解决base64编码url的问题了:
相关阅读
01山东省菏泽市巨野县消防救援大队2026年主副食采购招标项目公开招标公告022026上海国际智慧口岸建设大会暨口岸科技装备展览会-2026年展会,智慧口岸032026第11届世界智能制造博览会-2026年展会,智能制造展04南通铭泰机床有限公司普通三辊卷板机|四辊卷板机|上辊万能式卷板机- 南通铭泰机床有限公司05以展为媒,视野向全球!多家欧亚泵阀协会确认组织国际采购团参与浙江国际阀门展 | 展会新闻 | 2027浙江国际阀门产业链展览会 | 温州泵阀展 | 免费酒店住宿06全市泵阀产业链工作座谈会召开 王彩莲部长强调抓实展会经济,办好10月浙江国际阀门展 | 展会新闻 | 2027浙江国际阀门产业链展览会 | 温州泵阀展 | 免费