如果直接使用base64_encode和base64_decode方法的话,生成的字符串可能不适用URL地址。下面的方法可以解决该问题:
URL安全的字符串编码:
复制代码代码如下:
function urlsafe_b64encode($string) {
$data = base64_encode($string);
$data = str_replace(array('+','/','='),array('-','_',''),$data);
return $data;
}
URL安全的字符串解码:
复制代码代码如下:
function urlsafe_b64decode($string) {
$data = str_replace(array('-','_'),array('+','/'),$string);
$mod4 = strlen($data) % 4;
if ($mod4) {
$data .= substr('====', $mod4);
}
return base64_decode($data);
}
本文介绍了一种URL安全的Base64编码及解码方法,通过替换标准Base64字符集中的特殊字符来确保编码后的字符串适用于URL地址。文章提供了具体的PHP函数实现,包括urlsafe_b64encode和urlsafe_b64decode。
1187

被折叠的 条评论
为什么被折叠?



