ホームページ  >  記事  >  バックエンド開発  >  phpのbase64はURL文字列をどのようにエンコードおよびデコードしますか?

phpのbase64はURL文字列をどのようにエンコードおよびデコードしますか?

青灯夜游
青灯夜游転載
2020-06-29 13:17:243180ブラウズ

phpのbase64はURL文字列をどのようにエンコードおよびデコードしますか?

Base64 は、バイナリを http 送信用の可視文字にトランスコードできますが、Base64 トランスコードすると、URL によってトランスコードされる「 」、「/」、「=」が生成されます。文字はデータの 2 つの側面で不一致を引き起こします。

「 」、「/」、および「=」は、送信前に URL 内のトランスコードされない文字に置き換えることができます。データを受信した後、これらの文字を元に戻してデコードできます。

1. URL セーフな文字列エンコード:

    function urlsafe_b64encode($string) {
       $data = base64_encode($string);
       $data = str_replace(array('+','/','='),array('-','_',''),$data);
       return $data;
    }

2. 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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。