php

Recuperar la URL completa en PHP

Recuperar la URL completa en PHP
Se pueden usar dos tipos de variables globales en PHP: la variable superglobal y la variable definida por el usuario. $ _SERVER es una variable de matriz superglobal que se utiliza para recuperar la ruta completa de la página actual. El protocolo (HTTP o HTTPS) de la URL también es necesario para obtener la URL completa de la página. Si $ _SERVER ['HTTPS'] devoluciones 'en', luego se usará HTTPS con la dirección URL, de lo contrario, HTTP se utilizará. Cómo se puede recuperar la dirección URL completa de la página actual utilizando el $ _SERVER array se ha explicado en este tutorial.

Variables necesarias

Se requieren las siguientes variables superglobales para encontrar la dirección URL de la página actual.

Variables superglobales Propósitos
$ _SERVER ['HTTPS'] Vuelve en si se usa el protocolo HTTPS en la URL de la página actual.
$ _SERVER ['HTTP_HOST'] Devuelve el nombre del servidor de la página actual.
$ _SERVER ['REQUEST_URI'] Devuelve el nombre del recurso solicitado.
$ _SERVER ['SERVER_PORT'] Devuelve el número de puerto del servidor.
$ _SERVER ['QUERY_STRING'] Devuelve el valor de la cadena de consulta si existe en la dirección URL de la página actual.

Ejemplo 1: mostrar la URL de la página actual mediante una declaración condicional

El siguiente ejemplo muestra cómo se puede utilizar la declaración condicional para obtener el protocolo utilizado en la URL de la página actual. Crea un archivo PHP con el siguiente script.

El valor de $ _SERVER ['HTTP_HOST'] se usa para obtener el nombre de dominio de la URL actual. El valor de $ _SERVER ['REQUEST_URI'] se usa para obtener el nombre del recurso solicitado. Está establecido() La función se usa para verificar si $ _SERVER ['HTTPS'] es un conjunto o no, y si está establecido, entonces verifique el valor de $ _SERVER ['HTTPS'] si es en o no. A continuación, los valores de estas tres variables se combinan con '//:' para recuperar la URL completa de la página actual.

// Leer el nombre de dominio de la página actual
$ dominio = $ _SERVER ['HTTP_HOST'];
// Leer el recurso solicitado
$ recurso = $ _SERVER ['REQUEST_URI'];
// Conoce el protocolo de la url actual
if (isset ($ _ SERVER ['HTTPS']) && $ _SERVER ['HTTPS'] === 'on')
$ protocolo = "https";
demás
$ protocolo = "http";
// Combina todas las partes para obtener la dirección URL completa
$ url = $ protocolo.": //".$ dominio.$ recurso;
// Imprime la dirección URL de la página actual
eco "

La dirección URL del actual
la página es:

". $ url;?>

Producción:

La siguiente salida aparecerá después de ejecutar el script desde el servidor. El valor de $ _SERVER ['HTTPS'] no es en para el servidor local. Entonces la salida muestra el http protocolo para la URL actual.

Ejemplo 2: mostrar la URL de la página actual utilizando un operador ternario

El siguiente ejemplo muestra la forma de obtener la URL completa de la página actual utilizando el operador ternario. Crea un archivo PHP con el siguiente script.

Si la condición se usa en el ejemplo anterior para averiguar qué protocolo se usa en la URL de la página actual. La misma tarea se realiza utilizando el operador ternario en este script. Está establecido() La función se usa para verificar si $ _SERVER ['HTTPS'] es un conjunto o no, y si el valor de $ _SERVER ['HTTPS'] es en, entonces el operador ternario devolverá HTTPS, de lo contrario devolverá HTTP. Las otras partes de la URL se recuperan e imprimen como en el ejemplo anterior.

// Conoce el protocolo de la url actual
$ protocolo = (isset ($ _ SERVER ['HTTPS']) && $ _SERVER ['HTTPS']
== 'encendido' ? "https": "http");
// Leer el nombre de dominio de la página actual
$ dominio = $ _SERVER ['HTTP_HOST'];
// Leer el recurso solicitado
$ recurso = $ _SERVER ['REQUEST_URI'];
// Combina todas las partes para obtener la dirección URL completa
$ url = $ protocolo.": //".$ dominio.$ recurso;
// Imprime la dirección URL de la página actual
eco "

La dirección URL de la página actual es:

". $ url;
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script desde el servidor. El valor de $ _SERVER ['HTTPS'] no es en para el servidor local. Entonces, la salida muestra el protocolo HTTP para la URL actual.

Ejemplo 3: mostrar la URL de la página actual según el número de puerto

En los dos ejemplos anteriores, el valor de $ _SERVER ['HTTPS'] se usa para averiguar el protocolo de la URL actual de la página, y no se usa una cadena de consulta con la URL. El siguiente ejemplo muestra cómo se puede utilizar la variable $ _SERVER ['SERVER_PORT'] para averiguar el protocolo y recuperar la dirección URL completa con la cadena de consulta. Crea un archivo PHP con el siguiente script.

Aquí, se utilizan múltiples condiciones lógicas y un operador ternario para averiguar el protocolo. Si el valor de $ _SERVER ['HTTPS'] está vacío o establecido en apagado, luego verificará el valor de $ _SERVER ['SERVER_PORT'] para averiguar el protocolo de la URL actual. La variable $ _SERVER ['QUERY_STRING'] se usa para recuperar el valor de la cadena de consulta de la URL.

// Conoce el protocolo de la url actual
$ protocolo = ((!vacío ($ _ SERVER ['HTTPS']) && $ _SERVER ['HTTPS']
!= 'apagado') || $ _SERVER ['SERVER_PORT'] == 443) ? "https: //": "http: //";
// Leer el nombre de dominio de la página actual
$ dominio = $ _SERVER ['HTTP_HOST'];
// Leer el recurso solicitado
$ recurso = $ _SERVER ['REQUEST_URI'];
// Leer el valor de la cadena de consulta
$ consulta = $ _SERVER ['QUERY_STRING'];
// Combina todas las partes para obtener la dirección URL completa
$ url = $ protocolo.$ dominio.$ recurso;
// Imprime la dirección URL de la página actual
eco "

La dirección URL completa de la página actual es:

". $ url;
// Imprime la parte de la cadena de consulta
eco "

La cadena de consulta es:

". $ consulta;
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior desde el servidor sin ninguna cadena de consulta. No se proporciona una cadena de consulta en la URL. Entonces la salida muestra la cadena de consulta vacía.

La siguiente salida aparecerá después de ejecutar el script anterior desde el servidor con la cadena de consulta. El siguiente resultado muestra la dirección URL con la cadena de consulta y la cadena de consulta por separado.

Conclusión

En este tutorial se muestran diferentes formas de recuperar la URL completa de la página actual utilizando varios ejemplos. La forma de separar la URL y la cadena de consulta también se muestra en este tutorial. Con suerte, este tutorial ayudará a los lectores a conocer la forma de leer la URL completa de la página actual utilizando el script PHP.

Vulkan para usuarios de Linux
Con cada nueva generación de tarjetas gráficas, vemos que los desarrolladores de juegos superan los límites de la fidelidad gráfica y se acercan un pa...
OpenTTD frente a Simutrans
Crear su propia simulación de transporte puede ser divertido, relajante y extremadamente atractivo. Es por eso que debes asegurarte de probar tantos j...
Tutorial de OpenTTD
OpenTTD es uno de los juegos de simulación empresarial más populares que existen. En este juego, necesitas crear un maravilloso negocio de transporte....