Para conseguir información del cliente y servidor con PHP tenemos dos formas, con la variable superglobal $_SERVER o usando variables de entorno con la función getenv().
Esto nos puede ser muy útil por ejemplo para crear logs y estadistas en un sitio web.
$_SERVER nos da mucha información del servidor y del cliente:
<?php echo $_SERVER['SERVER_ADDR']."<br/>"; //Imprime la IP del servidor echo $_SERVER['SERVER_NAME']."<br/>"; //Imprime el nombre del servidor echo $_SERVER['SERVER_SOFTWARE']."<br/>"; //Imprime el software que usa el servidor echo $_SERVER['SERVER_PROTOCOL']."<br/>"; //Imprime el protocolo usado echo $_SERVER['REQUEST_METHOD']."<br/>"; //Imprime el método de petición empleado echo $_SERVER['REQUEST_TIME']."<br/>"; //Imprime el tiempo de respuesta echo $_SERVER['HTTP_USER_AGENT']."<br/>"; /*Imprime la información de S.O y navegador del cliente*/ echo $_SERVER["REMOTE_ADDR"]."<br/>"; //Imprime la dirección IP del cliente /*Imprime puerto empleado por la máquina del usuario para comunicarse con el servidor web. */ echo $_SERVER["REMOTE_PORT"]."<br/>"; ?>
Obtener el valor de una variable de entorno.
<?php //Uso de getenv() $ip=getenv('REMOTE_ADDR'); //Usando la variable superglobal $_SERVER $ip=$_SERVER['REMOTE_ADDR']; ?>
Más información:
$_SERVER en php.net
getenv() en php.net