Request-Pfad: http: // localhost /1/2/# Beispiel/
print_r($_SERVER['REQUEST_URI']);
Erwartet: /1/2/# Beispiel/
Actual:/1/2/
urldecode
verwenden, haben keine Wirkung, weil PHP das Array schafft zu beginnen. Ja, das ist kein orthodoxer Verzeichnisname, aber gibt es eine andere Möglichkeit, den angeforderten URI in PHP zu bestimmen?
Wenn dies ein tatsächlicher Ordner mit dem Namen '# Example' ist, müssten Sie den Hash in den Link zu dieser Seite eingeben, damit die URL'/1/2 /% 23 Beispiel/'wird. Ein URL-Hash (#whatever) wird niemals an PHP gesendet. Es steht dem Kunden in Javascript zur Verfügung. –
Siehe https://tools.ietf.org/html/rfc3986#section-3.5 "... die Fragmentkennung wird nicht in der systemspezifischen Verarbeitung eines URI verwendet; Stattdessen wird der Fragmentbezeichner vor einer Dereferenzierung vom Rest des URIs getrennt , und daher wird die Identifizierungsinformation innerhalb des Fragments selbst nur durch den Benutzeragenten dereferenziert , unabhängig vom URI-Schema Server – Reeno