PHP – Server – $_SERVER, filter_input, filter_var
Función que devuelve un valor determinado de la variable superglobal $_SERVER.
Para acceder a la variable $_SERVER es mejor utilizar la función filter_input y filter_var y no acceder directamente a esta variable superglobal. Además estas funciones nos garantizan un contenido libre de errores.
/** * Class HelperServer */ abstract class HelperServer { /** * Devuelve el valor de una variable del * array superglobal $_SERVER * NOTA: filter_input para las opciones INPUT_SERVER y INPUT_ENV no funcionan para FASTCGI * Si la variable no existe, devuelve null * * @param string $key * * @return string */ public static function getValue($key) : string { if (filter_has_var(INPUT_SERVER, $key)) { $value = filter_input(INPUT_SERVER, $key, FILTER_SANITIZE_STRING); } else { $value = ''; if (array_key_exists($key, $_SERVER)) { $value = filter_var( $_SERVER[ $key ], FILTER_SANITIZE_STRING, null); } return $value; } if ($value === false || is_null($value)) { return null; } return $value; } }
Ejemplo
$user_agent = HelperServer::getValue('HTTP_USER_AGENT'); print_r($user_agent);