Heim > Backend-Entwicklung > PHP-Tutorial > PHP_SELF, PATH_INFO, SCRIPT_NAME und REQUEST_URI: Was ist der Unterschied?

PHP_SELF, PATH_INFO, SCRIPT_NAME und REQUEST_URI: Was ist der Unterschied?

Barbara Streisand
Freigeben: 2024-11-02 15:48:02
Original
194 Leute haben es durchsucht

PHP_SELF, PATH_INFO, SCRIPT_NAME, and REQUEST_URI: What's the Difference?

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

  • PHP_SELF: /test.php/foo/bar
  • SCRIPT_NAME: /test .php

Beispiel 2:
http://example.com/test.php?foo=bar

  • SCRIPT_NAME: / test.php
  • REQUEST_URI: /test.php?foo=bar

Beispiel 3:
http://example.com/test. php (mit mod_rewrite-Umleitung)

  • REQUEST_URI: /test.php
  • SCRIPT_NAME: /test2.php

Beispiel 4:
Benutzerdefinierte Fehlerseite in IIS:
http://example.com/test.php

  • SCRIPT_NAME: /404error.php
  • REQUEST_URI: /404error. php?404;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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage