首頁 >後端開發 >php教程 >php base64如何進行URL字串編碼和解碼?

php base64如何進行URL字串編碼和解碼?

青灯夜游
青灯夜游轉載
2020-06-29 13:17:243226瀏覽

php base64如何進行URL字串編碼和解碼?

Base64可以將二進位轉碼成可見字元方便進行http傳輸,但是base64轉碼時會產生“ ”,“/”,“=”這些被URL進行轉碼的特殊字符,導致兩方面資料不一致。

我們可以在發送前將“ ”,“/”,“=”替換成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);
    }

推薦教學: 《php教學

以上是php base64如何進行URL字串編碼和解碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除