Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kodiert und dekodiert PHP Base64 URL-Strings?

Wie kodiert und dekodiert PHP Base64 URL-Strings?

青灯夜游
青灯夜游nach vorne
2020-06-29 13:17:243199Durchsuche

Wie kodiert und dekodiert PHP Base64 URL-Strings?

Base64 kann Binärzeichen für die HTTP-Übertragung in sichtbare Zeichen umwandeln, aber bei der Base64-Transkodierung werden „+“, „/“, „=" generiert, die durch die URL-Sonderzeichen transkodiert werden. Dies führt zu Inkonsistenzen in den beiden Aspekten der Daten.

Wir können „+“, „/“ und „=" durch Zeichen ersetzen, die vor dem Senden nicht in der URL transkodiert werden. Nach Erhalt der Daten können wir diese Zeichen wieder ersetzen und dann dekodieren.

1. URL-sichere String-Kodierung:

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

2. URL-sichere String-Dekodierung:

    function urlsafe_b64decode($string) {
       $data = str_replace(array('-','_'),array('+','/'),$string);
       $mod4 = strlen($data) % 4;
       if ($mod4) {
           $data .= substr('====', $mod4);
       }
       return base64_decode($data);
    }

Empfohlenes Tutorial: " PHP-Tutorial"

Das obige ist der detaillierte Inhalt vonWie kodiert und dekodiert PHP Base64 URL-Strings?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen