Base64编码后会生成+,/,=这些特殊符号进行URL传输时+/会转义,导致数据不一致无法解码。
一、URL安全的字符串编码
function base64_safeurl_encode($string) { return str_replace(array('+','/','='),array('-','_',''),base64_encode($string)); }
二、URL安全的字符串解码
function base64_safeurl_decode($string) { $data = str_replace(array('-','_'),array('+','/'),$string); $mod4 = strlen($data) % 4; if ($mod4) { $data .= substr('====', $mod4); } return base64_decode($data); }
目前有 0 条评论