PHP Get URL - Comment obtenir l'URL complète de la page actuelle

Dans cet article consacré à PHP, nous explorerons comment obtenir l'URL de la page actuelle dans le langage de programmation PHP.

Vous souhaiterez peut-être obtenir l'URL de la page actuelle pour les raisons suivantes:

  • Créer des liens internes
  • Utilisation de filtres avec des requêtes GET, par exemple, currentURL.com?myFilterParameter=Food

PHP stocke en fait de nombreuses informations utiles lorsque les utilisateurs naviguent dans votre application Web. L'un d'eux est, bien sûr, l'URL actuelle.

PHP stocke ces informations utiles dans son tableau de variables super-globales.

Que sont les superglobales?

Les superglobales sont déjà des variables définies par le moteur PHP qui peuvent être utilisées dans n'importe quel type de portée. Ils sont facilement disponibles à tout moment.

Il y a beaucoup de ces superglobales, mais celle qui nous intéresse est la superglobale $ _SERVER.

Le $ _SERVER Superglobal

La variable superglobale $ _SERVER a de nombreuses propriétés accessibles avec un index de style associatif.  

Certaines des valeurs auxquelles nous pouvons accéder comprennent:

  • HTTP_USER_AGENT
  • HTTP_HOST
  • HTTP_ACCEPT_ENCODING
  • HTTP_ACCEPT

Vous pouvez voir plus de ces indices dans la documentation PHP ici.

Alors, comment obtenir l'URL complète?

En gardant à l'esprit les points ci-dessus sur les superglobales et la superglobale $ _SERVER , nous pouvons aller de l'avant et obtenir l'URL de la page actuelle.

Dans la capture d'écran suivante, j'ai rendu une application PHP dans un environnement local dans une page nommée «home».

L'URL est // localhost / home .

Dans la base de code de cette page, je vais utiliser la variable $ _SERVER .

Avec cette variable, nous devrons utiliser 2 index distincts pour obtenir chaque partie de l'URL de la page courante. La première partie sera l'hôte, localhost, et la deuxième partie sera le nom de la page, home.

Le premier index que nous utiliserons est HTTP_HOST - L'hôte de l'adresse Web actuelle, par exemple localhost ou example.com

Le second est REQUEST_URI qui nous donnera la partie de l'URL après l'hôte, donc c'est n'importe quoi après localhost ou example.com

Voyons cela en action:

$currentPageUrl = '//' . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]; echo "Current page URL " . $currentPageUrl; 

Production

Et c'est tout - assez simple!

Sommaire

La variable superglobale $ _SERVER stocke de nombreuses informations vitales pour les cas d'utilisation modernes. Comme nous l'avons découvert dans cet exemple, l'obtention de l'URL de la page actuelle est simplifiée grâce à la possibilité d'accéder à cette variable spécifique.

Cela vaut la peine de consulter la documentation pour voir quels autres indices sont disponibles, car il est bon de garder à l'esprit l'utilité de cette variable.

J'espère que cet article vous a plu! Si vous l'avez fait, n'hésitez pas à consulter mon blog, //www.codewall.co.uk/