Cómo obtener la URL de la página actual en PHP [duplicar]
Esta pregunta ya tiene una respuesta aquí:
- Obtenga la URL completa en PHP 30 respuestas
En PHP, ¿cómo puedo obtener la URL de la página actual? Preferiblemente solo las partes después de http://domain.com .
5 answers
$_SERVER['REQUEST_URI']
Para más detalles sobre qué información está disponible en la matriz $_SERVER, vea la página de manual de PHP para ello.
Si también necesita la cadena de consulta (el bit después de ?
en una URL), esa parte está en esta variable:
$_SERVER['QUERY_STRING']
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-03-09 01:22:18
Si desea solo las partes de la url después de http://domain.com , prueba esto:
<?php echo $_SERVER['REQUEST_URI']; ?>
Si la url actual era http://domain.com/some-slug/some-id , echo devolverá solo '/ some-slug / some-id'.
Si quieres la url completa, prueba esto:
<?php echo 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; ?>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-09 18:51:55
$uri = $_SERVER['REQUEST_URI'];
Esto le dará el directorio y el nombre de archivo solicitados. Si usas mod_rewrite, esto es extremadamente útil porque te dice qué página estaba mirando el usuario.
Si necesita el nombre real del archivo, es posible que desee probar $_SERVER['PHP_SELF']
, la constante mágica __FILE__
o $_SERVER['SCRIPT_FILENAME']
. Los últimos 2 le dan la ruta completa (desde la raíz del servidor), en lugar de solo la raíz de su sitio web. Son útiles para includes y tal.
$_SERVER['PHP_SELF']
le da el nombre de archivo relativo a la raíz del sitio web.
$relative_path = $_SERVER['PHP_SELF'];
$complete_path = __FILE__;
$complete_path = $_SERVER['SCRIPT_FILENAME'];
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-08-16 02:16:51
Las otras respuestas son correctas. Sin embargo, una nota rápida: si está buscando agarrar las cosas después de ?
en un URI, debe usar la matriz $_GET[]
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-08-16 05:28:16
Puedes usar $_SERVER ['HTTP_REFERER'] esto te dará toda la URL por ejemplo: supongamos que quieres obtener la url del nombre del sitio www.example.com entonces $_SERVER ['HTTP_REFERER'] te dará https://www.example.com
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-10-09 09:25:59