Rufen Sie die volle URL in PHP ab

Rufen Sie die volle URL in PHP ab
Zwei Arten globaler Variablen können in PHP verwendet werden: Die superglobale Variable und die benutzerdefinierte Variable. $ _Server ist eine superglobale Array -Variable, mit der der vollständige Pfad der aktuellen Seite abgerufen wird. Das Protokoll (HTTP oder HTTPS) der URL ist ebenfalls erforderlich, um die vollständige URL der Seite zu erhalten. Wenn $ _Server ['https'] kehrt zurück 'An', Dann wird HTTPS mit der URL -Adresse verwendet, ansonsten, Http wird verwendet. Wie die vollständige URL -Adresse der aktuellen Seite mit dem abgerufen werden kann $ _Server Array wurde in diesem Tutorial erklärt.

Notwendige Variablen

Die folgenden Superglobal -Variablen sind erforderlich, um die URL -Adresse der aktuellen Seite zu ermitteln.

Superglobale Variablen Zwecke
$ _Server ['https'] Es kehrt zurück An Wenn das HTTPS -Protokoll in der URL der aktuellen Seite verwendet wird.
$ _Server ['http_host'] Es gibt den Namen des Servers der aktuellen Seite zurück.
$ _Server ['Request_uri'] Es gibt den angeforderten Ressourcennamen zurück.
$ _Server ['server_port'] Es gibt die Portnummer des Servers zurück.
$ _Server ['query_string'] Es gibt den Wert für Abfragestöne zurück, wenn er in der URL -Adresse der aktuellen Seite vorhanden ist.

Beispiel 1: Zeigen Sie die URL der aktuellen Seite mit einer bedingten Anweisung an

Das folgende Beispiel zeigt, wie die bedingte Anweisung verwendet werden kann, um das in der URL der aktuelle Seite verwendete Protokoll zu erhalten. Erstellen Sie eine PHP -Datei mit dem folgenden Skript.

Der Wert von $ _server ['http_host'] wird verwendet, um den Domänennamen der aktuellen URL zu erhalten. Der Wert von $ _server ['Request_uri'] wird verwendet, um den Namen der angeforderten Ressource zu erhalten. isset () Die Funktion wird verwendet, um zu überprüfen, ob das $ _server ['https'] ein Satz ist oder nicht, und wenn festgelegt wird, überprüfen Sie den Wert von $ _server ['https'] An oder nicht. Als nächstes werden die Werte dieser drei Variablen mit '//:' kombiniert, um die vollständige URL der aktuellen Seite abzurufen.

// Lesen Sie den Domänennamen der aktuellen Seite
$ domain = $ _server ['http_host'];
// Lesen Sie die angeforderte Ressource
$ ressourcen = $ _server ['request_uri'];
// Finden Sie das Protokoll der aktuellen URL heraus
if (isset ($ _ server ['https']) && $ _server ['https'] === 'on'))
$ protocol = "https";
anders
$ protocol = "http";
// Kombinieren Sie alle Teile, um die vollständige URL -Adresse zu erhalten
$ url = $ Protokoll.": //".$ Domain.$ ressource;
// Drucken Sie die URL -Adresse der aktuellen Seite aus
Echo "

Die URL -Adresse des Stroms
Seite ist:

". $ url;?>

Ausgang:

Die folgende Ausgabe wird angezeigt, nachdem das Skript vom Server ausgeführt wird. Der Wert von $ _server ['https'] ist nicht An Für den lokalen Server. Die Ausgabe zeigt also die http Protokoll für die aktuelle URL.

Beispiel 2: Zeigen Sie die URL der aktuellen Seite mit dem ternären Operator an

Das folgende Beispiel zeigt den Weg, um die vollständige URL der aktuellen Seite mit dem ternären Operator zu erhalten. Erstellen Sie eine PHP -Datei mit dem folgenden Skript.

Wenn Der Zustand wird im vorherigen Beispiel verwendet, um herauszufinden, welches Protokoll in der URL der aktuellen Seite verwendet wird. Die gleiche Aufgabe erfolgt mit dem ternären Operator in diesem Skript. isset () Die Funktion wird verwendet, um zu überprüfen An, Anschließend wird der ternäre Operator HTTPS zurückgeben, andernfalls wird HTTP zurückgegeben. Die anderen Teile der URL werden wie das vorherige Beispiel abgerufen und gedruckt.

// Finden Sie das Protokoll der aktuellen URL heraus
$ protocol = (isset ($ _ server ['https']) && $ _server ['https']
== 'on' ? "https": "http");
// Lesen Sie den Domänennamen der aktuellen Seite
$ domain = $ _server ['http_host'];
// Lesen Sie die angeforderte Ressource
$ ressourcen = $ _server ['request_uri'];
// Kombinieren Sie alle Teile, um die vollständige URL -Adresse zu erhalten
$ url = $ Protokoll.": //".$ Domain.$ ressource;
// Drucken Sie die URL -Adresse der aktuellen Seite aus
Echo "

Die URL -Adresse der aktuellen Seite lautet:

". $ url;
?>

Ausgang:

Die folgende Ausgabe wird angezeigt, nachdem das Skript vom Server ausgeführt wird. Der Wert von $ _server ['https'] ist nicht An Für den lokalen Server. Der Ausgang zeigt also das HTTP -Protokoll für die aktuelle URL.

Beispiel 3: Zeigen Sie die URL der aktuellen Seite basierend auf der Portnummer an

In den beiden vorherigen Beispielen wird der Wert von $ _server ['https'] verwendet, um das Protokoll der aktuellen URL der Seite herauszufinden, und mit der URL wird keine Abfragezeichenfolge verwendet. Das folgende Beispiel zeigt, wie die Variable $ _server ['server_port'] verwendet werden kann, um das Protokoll zu ermitteln und die vollständige URL -Adresse mit der Abfragezeichenfolge abzurufen. Erstellen Sie eine PHP -Datei mit dem folgenden Skript.

Hier werden mehrere logische Bedingungen und der ternäre Operator verwendet, um das Protokoll herauszufinden. Wenn der Wert von $ _server ['https'] leer oder auf eingestellt ist aus, Anschließend wird der Wert von $ _server ['server_port'] überprüft, um das Protokoll der aktuellen URL herauszufinden. $ _Server ['query_string'] Variable wird verwendet, um den Abfrage -Zeichenfolgenwert aus der URL abzurufen.

// Finden Sie das Protokoll der aktuellen URL heraus
$ protocol = (((!leer ($ _ server ['https']) && $ _server ['https']
!= 'off') || $ _Server ['server_port'] == 443) ? "https: //": "http: //";
// Lesen Sie den Domänennamen der aktuellen Seite
$ domain = $ _server ['http_host'];
// Lesen Sie die angeforderte Ressource
$ ressourcen = $ _server ['request_uri'];
// Lesen Sie den Wert für Abfragebarstellung
$ query = $ _server ['query_string'];
// Kombinieren Sie alle Teile, um die vollständige URL -Adresse zu erhalten
$ url = $ Protokoll.$ Domain.$ ressource;
// Drucken Sie die URL -Adresse der aktuellen Seite aus
Echo "

Die vollständige URL -Adresse der aktuellen Seite lautet:

". $ url;
// Drucken Sie den Teil der Abfragestöne
Echo "

Die Abfragezeichenfolge lautet:

". $ query;
?>

Ausgang:

Die folgende Ausgabe wird angezeigt, nachdem das obige Skript ohne Abfragezeichenfolge aus dem Server ausgeführt wurde. In der URL ist keine Abfragebarstellung bereitgestellt. Die Ausgabe zeigt also die leere Abfragezeichenfolge.

Die folgende Ausgabe wird angezeigt, nachdem das obige Skript mit der Abfragezeichenfolge aus dem Server ausgeführt wurde. Die folgende Ausgabe zeigt die URL -Adresse mit der Abfragezeichenfolge und der Abfragezeichenfolge separat.

Abschluss

In diesem Tutorial werden verschiedene Möglichkeiten zum Abrufen der vollständigen URL der aktuellen Seite angezeigt, indem verschiedene Beispiele verwendet werden. Der Weg, um die URL und die Abfragebarstellung zu trennen, wird auch in diesem Tutorial angezeigt. Hoffentlich hilft dieses Tutorial den Lesern, die Art und Weise zu wissen, wie das vollständige URL der aktuellen Seite mit dem PHP -Skript gelesen wird.