这篇文章主要介绍了PHP安全的URL字符串base64编码和解码,在base64的基础上替换了不安全的一些字符,需要的朋友可以参考下
如果直接使用base64_encode和base64_decode方法的话,生成的字符串可能不适用URL地址。下面的方法可以解决该问题:
URL安全的字符串编码:
1
2
3
4
5
|
function
urlsafe_b64encode(
$string
) {
$data
=
base64_encode
(
$string
);
$data
=
str_replace
(
array
(
'+'
,
'/'
,
'='
),
array
(
'-'
,
'_'
,
''
),
$data
);
return
$data
;
}
|
URL安全的字符串解码:
1
2
3
4
5
6
7
8
|
function
urlsafe_b64decode(
$string
) {
$data
=
str_replace
(
array
(
'-'
,
'_'
),
array
(
'+'
,
'/'
),
$string
);
$mod4
=
strlen
(
$data
) % 4;
if
(
$mod4
) {
$data
.=
substr
(
'===='
,
$mod4
);
}
return
base64_decode
(
$data
);
}
|
本文转自 gutaotao1989 51CTO博客,原文链接:http://blog.51cto.com/taoyouth/1614380