Podemos detectar la solicitud del idioma del navegador utilizando la variable súper global de PHP $_SERVER
. Es una variable superglobal que contiene información sobre encabezados, rutas y ubicaciones de scripts . Es básicamente una array asociativa en PHP que tiene claves como SERVER_NAME, SERVER_ADDR, REQUEST_METHOD
, etc.
Podemos usar HTTP_ACCEPT_LANGUAGE
key para obtener el idioma del navegador.
Sintaxis:
$_SERVER['HTTP_ACCEPT_LANGUAGE']
Podemos ver una salida como:
en-US, en;q=0.9, hi;q=0.8, fr;q=0.7
Ejemplo 1:
para obtener el idioma actual del navegador, podemos usar la función substr incorporada de PHP para obtener las dos primeras letras de la string como-
<?php echo substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2); ?>
Después de ejecutar el programa anterior, verá la salida como el idioma de su navegador actual:
en
Puede probarlo cambiando el idioma de su navegador. Si está en Chrome, puede ir a chrome://settings/languages
y elegir un idioma diferente.
Ahora ejecute el programa anterior nuevamente y verá la salida como el idioma recién elegido.
Ejemplo 2: si su sitio web tiene diferentes páginas para diferentes idiomas , puede usar este método para redirigir a la página según el idioma del navegador del usuario.
<?php $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2); // Redirect browser header("Location: https://www.geeksforgeeks.org/" . $lang . "/index.php"); exit; ?>
El programa anterior redirigirá a enlaces como
http://www.example.com/en/index.php
Publicación traducida automáticamente
Artículo escrito por frikishaan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA