Allgemein
Diese PHP-Funktion wird für das Generieren des JWS-Strings, insbesondere dann, wenn die Registrierkassenschnittstelle ausgefallen ist, benötigt. Im Vergleich zur Funktion base64_encode() werden zusätzlich einige Zeichen durch andere ersetzt.
function base64_encode_url($s){
return rtrim(strtr(base64_encode($s), '+/', '-_'), '=');
}
Mit dieser Funktion werden unter anderem die Zeichenketten eyJhbGciOiJFUzI1NiJ9 und U2ljaGVyaGVpdHNlaW5yaWNodHVuZyBhdXNnZWZhbGxlbg (=“Sicherheitseinrichtung ausgefallen“) gebildet.
Beispiele
Im Fall des Ausfalls der Schnittstelle wird der JWS-String so generiert:
$sJWS = base64_encode_url($sHeader).base64_encode_url($sPayload).base64_encode_url('Sicherheitseinrichtung ausgefallen');
Den letzten Teil kann man, wenn man will, auch hardcoden.