PHP_SELF vs. PATH_INFO vs. SCRIPT_NAME vs. REQUEST_URI: Die Unterschiede verstehen
Bei der Entwicklung von PHP-Anwendungen ist es wichtig, den Unterschied zwischen PHP_SELF und PATH_INFO zu verstehen , SCRIPT_NAME und REQUEST_URI. Diese Servervariablen liefern Informationen über die Adresse des aktuellen Skripts und können für die Navigation und das Umschreiben von URLs nützlich sein.
PHP_SELF enthält normalerweise den vollständigen URI des aktuellen Skripts, einschließlich des Skriptnamens und eines beliebigen Pfads Information. Er kann sich jedoch von SCRIPT_NAME unterscheiden, wenn die Anfrage die Form http://example.com/test.php/foo/bar hat.
PATH_INFO enthält den Pfad Informationen am Ende des Anfrage-URI. Es wird jedoch nur ausgefüllt, wenn der Anforderungs-URI die oben genannte Form hat.
SCRIPT_NAME stellt den Namen des aktuellen Skripts dar, ohne jegliche Pfadinformationen. Es ist normalerweise dasselbe wie PHP_SELF, es sei denn, der URI enthält ein /.
REQUEST_URI enthält den vollständigen Anforderungs-URI, einschließlich Pfad, Abfragezeichenfolge und Anker. Es unterscheidet sich von PHP_SELF und SCRIPT_NAME, wenn eine Abfragezeichenfolge vorhanden ist oder wenn eine serverseitige Umleitung verwendet wird.
Um die Unterschiede zu veranschaulichen, hier einige praktische Beispiele:
Beispiel 1:
http://example.com/test.php/foo/bar
Beispiel 2:
http://example.com/test.php?foo=bar
Beispiel 3:
http://example.com/test. php (mit mod_rewrite-Umleitung)
Beispiel 4:
Benutzerdefinierte Fehlerseite in IIS:
http://example.com/test.php
Wenn Sie diese Unterschiede verstehen, können Sie die entsprechende Servervariable effektiv nutzen, um die Navigation, das Umschreiben von URLs und die Fehlerbehandlung in Ihrem PHP zu verwalten Anwendungen.
Das obige ist der detaillierte Inhalt vonPHP_SELF, PATH_INFO, SCRIPT_NAME und REQUEST_URI: Was ist der Unterschied?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!