Localización

Por completar

Se entiende por localización la posibilidad de adaptar algunos elementos a una zona geográfica determinada (a veces se utiliza el término L10n para referirse a localización, el 10 hace referencia a las diez letras omitidas). En PHP, las categorías que pueden localizarse son:

setlocale(): asignación de localización

Para especificar una zona geográfica (normalmente países) se utiliza la función setlocale($categoria, $localizacion).

El argumento $categoria indica la categoría de funciones afectadas por la localización y sus valores posibles son:

El argumento $localizacion indica la zona geográfica y puede ser una única cadena, varias cadenas separadas por comas o una matriz de cadenas (en estos dos últimos casos se aplicaría la primera localización disponible).

En Linux, el argumento $localización suele ser una cadena una cadena del tipo ii_pp en el que ii es el código del idioma de dos letras y pp es el código del país de dos letras. Los códigos de idiomas y países se pueden consultar en la web de IANA.

En Windows el argumento $localización es en unos casos una cadena del tipo ii_pp, pero en otros son códigos de tres o más letras (en la web de Microsoft está disponible el listado de códigos de idiomas y el listado de códigos de regiones).

Ejemplo

Por ejemplo, para generar la fecha del día en castellano o en inglés se puede escribir (en Windows)

<?php
setlocale(LC_TIME, "spanish");
print "<p>" . strftime("Fecha española: %A, %#d de %B de %Y") . "</p>\n";

setlocale(LC_TIME, "english");
print "<p>" . strftime("English date: %A, %#d of %B %Y") . "</p>\n";
?>
<p>Fecha española: martes, 23 de enero de 2007</p>
<p>English date: Tuesday, 23 of January 2007</p>

Por completar