Maison  >  Article  >  programmation quotidienne  >  Comment obtenir l'adresse URL complète actuelle en php

Comment obtenir l'adresse URL complète actuelle en php

藏色散人
藏色散人original
2018-12-08 15:09:0033984parcourir

Pour les apprenants PHP, vous devez tous savoir que $_SERVER est un tableau contenant des informations telles que les informations d'en-tête (en-tête), le chemin (chemin) et les emplacements de script (emplacements de script). Évidemment, PHP utilise principalement la variable système $_SERVER pour obtenir l'adresse URL complète de la page en cours.

Comment obtenir l'adresse URL complète actuelle en php

Ci-dessous nous vous présenterons la méthode de mise en œuvre pour obtenir l'URL complète en PHP à travers des exemples spécifiques.

Nous imprimons d'abord $_SERVER directement. L'exemple de code est le suivant :

<?php
echo "<pre class="brush:php;toolbar:false">";
var_dump($_SERVER);

Les résultats de sortie sont les suivants :

Comment obtenir l'adresse URL complète actuelle en php

Le résultat de sortie de $_SERVER est tel qu'indiqué sur la figure, qui est un tableau contenant 41 éléments.

Alors, comment pouvons-nous obtenir l'URL complète actuelle ? Autrement dit, comment déterminer si la page actuelle est HTTP ou HTTPS, et comment obtenir le nom de domaine et le chemin ?

Le code de la solution est le suivant :

<?php

$uri = $_SERVER[&#39;REQUEST_URI&#39;];
echo $uri;//输出:URI 
echo "<br>";
$protocol = ((!empty($_SERVER[&#39;HTTPS&#39;]) && $_SERVER[&#39;HTTPS&#39;] != &#39;off&#39;) || $_SERVER[&#39;SERVER_PORT&#39;] == 443) ?
    "https://": "http://";
    
$url = $protocol . $_SERVER[&#39;HTTP_HOST&#39;] . $_SERVER[&#39;REQUEST_URI&#39;];
echo $url;//输出完整的url

Ici, $uri consiste à obtenir l'adresse du chemin du fichier, c'est-à-dire à obtenir la valeur de l'indice REQUEST_URI. Utilisez ensuite la méthode ci-dessus pour déterminer si l'en-tête de l'URL actuel commence par HTTP ou https. Enfin, vous pouvez séparer les trois parties de l'URL complète, y compris le protocole de transfert d'en-tête, le nom de domaine et le chemin de l'adresse du fichier.

Le résultat est le suivant :

Comment obtenir l'adresse URL complète actuelle en php

Comme le montre la figure, nous avons obtenu avec succès l'adresse URL complète de la page actuelle.

Remarque :

'REQUEST_URI', l'URI est utilisé pour spécifier la page à accéder.

'HTTPS', défini sur une valeur non vide si l'accès au script via le protocole HTTPS est effectué.

'SERVER_PORT', Le port utilisé par le serveur web. La valeur par défaut est "80". Si vous utilisez une connexion sécurisée SSL, cette valeur est le port HTTP défini par l'utilisateur. (Si $_SERVER['SERVER_PORT'] est égal à 443, cela signifie que l'url est accessible directement. S'il est égal à 8443, cela signifie qu'il faut accéder au numéro de port.)

'HTTP_HOST', requête en cours Le contenu de l'élément Host: dans l'en-tête, s'il est présent.

Cet article est une introduction à la méthode d'obtention de l'adresse URL complète actuelle en PHP. Il est également très simple et facile à comprendre. J'espère qu'il sera utile aux amis dans le besoin

.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn