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.
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 :
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['REQUEST_URI']; echo $uri;//输出:URI echo "<br>"; $protocol = ((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') || $_SERVER['SERVER_PORT'] == 443) ? "https://": "http://"; $url = $protocol . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; 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 :
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!