19-Variables, globales y superglobales

Algunas variables usadas en php son superglobales, lo que significa que siempre estan disponibles en todos los ambitos

Las variables superglobales son:

  • $GLOBALES
  • $_SERVIDOR
  • $_SOLICITUD
  • $_POST
  • $_GET
  • $_ARCHIVOS
  • $_ENV
  • $_COOKIE
  • $_SESIÓN



...

Variables $GLOBALES

La variable $GLOBALES es una variable superglobal de php que se utiliza para aceder a variables globales desde cualquier parte del script(tambien dentro de las funciones y metodos)

PHP almacena todas las variables globales en una matriz (array) llamada $GLOBALS[index]. el indice contiene el nombre de la variable

Ejemplo de uso de la variable $GLOBALS

<?php
$x = 75;
$y = 25;
 
function addition() {
  $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}
 
addition();
echo $z;
?> 



superglobal - $_SERVER

La variable

$_SERVER

es una variable que contiene informacion sobre encabezados, rutas y ubicaciones de scripts

Ejemplo de uso de la variable $_SERVER

 <?php
 echo $_SERVER['PHP_SELF'];
 echo "<br>";
 echo $_SERVER['SERVER_NAME'];
 echo "<br>";
 echo $_SERVER['HTTP_HOST'];
 echo "<br>";
 echo $_SERVER['HTTP_REFERER'];
 echo "<br>";
 echo $_SERVER['HTTP_USER_AGENT'];
 echo "<br>";
 echo $_SERVER['SCRIPT_NAME'];
 ?> 

Salida

 /demo/demo_global_server.php
 35.194.26.41
 35.194.26.41
 https://tryphp.w3schools.com/showphp.php?filename=demo_global_server
 Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:107.0) Gecko/20100101 Firefox/107.0
 /demo/demo_global_server.php 



La siguiente tabla enumera los elementos más importantes que pueden ir dentro de $_SERVER:

Elemento Description
$_SERVER['PHP_SELF'] Devuelve el nombre de archivo del script que se está ejecutando actualmente
$_SERVER['GATEWAY_INTERFACE'] Devuelve la versión de Common Gateway Interface (CGI) que utiliza el servidor
$_SERVER['SERVER_ADDR'] Devuelve la dirección IP del servidor host
$_SERVER['SERVER_NAME'] Devuelve el nombre del servidor host (como frioyelectronica.blogspot.com)
$_SERVER['SERVER_SOFTWARE'] Devuelve la cadena de identificación del servidor (como Apache/2.2.24)
$_SERVER['SERVER_PROTOCOL'] Devuelve el nombre y la revisión del protocolo de información (como HTTP/1.1)
$_SERVER['REQUEST_METHOD'] Devuelve el método de solicitud utilizado para acceder a la página (como POST)
$_SERVER['REQUEST_TIME'] Devuelve la marca de tiempo del inicio de la solicitud (como 1377687496)
$_SERVER['QUERY_STRING'] Devuelve la cadena de consulta si se accede a la página a través de una cadena de consulta
$_SERVER['HTTP_ACCEPT'] Devuelve el encabezado Aceptar de la solicitud actual
$_SERVER['HTTP_ACCEPT_CHARSET'] Devuelve el encabezado Accept_Charset de la solicitud actual (como utf-8,ISO-8859-1)
$_SERVER['HTTP_HOST'] Devuelve el encabezado Host de la solicitud actual
$_SERVER['HTTP_REFERER'] Devuelve la URL completa de la página actual (no confiable porque no todos los agentes de usuario lo admiten)
$_SERVER['HTTPS'] ¿Se consulta el script a través de un protocolo HTTP seguro?
$_SERVER['REMOTE_ADDR'] Devuelve la dirección IP desde donde el usuario está viendo la página actual
$_SERVER['REMOTE_HOST'] Devuelve el nombre del host desde donde el usuario está viendo la página actual
$_SERVER['REMOTE_PORT'] Devuelve el puerto que se utiliza en la máquina del usuario para comunicarse con el servidor web
$_SERVER['SCRIPT_FILENAME'] Devuelve el nombre de ruta absoluto del script que se está ejecutando actualmente
$_SERVER['SERVER_ADMIN'] Devuelve el valor dado a la directiva SERVER_ADMIN en el archivo de configuración del servidor web (si su secuencia de comandos se ejecuta en un host virtual, será el valor definido para ese host virtual) (como alguien@gmail.com)
$_SERVER['SERVER_PORT'] Devuelve el puerto en la máquina del servidor que utiliza el servidor web para la comunicación (como 80)
$_SERVER['SERVER_SIGNATURE'] Devuelve la versión del servidor y el nombre de host virtual que se agregan a las páginas generadas por el servidor
$_SERVER['PATH_TRANSLATED'] Devuelve la ruta basada en el sistema de archivos al script actual
$_SERVER['SCRIPT_NAME'] Devuelve la ruta del script actual.
$_SERVER['SCRIPT_URI'] Devuelve la URI de la página actual




Publicar un comentario

0 Comentarios