(PHP 4, PHP 5, PHP 7)
setlocale — Define informações locais
Category
é uma constante (ou string)
especificando a categoria de funções afetadas pela definição local:
setting:
Se locale
for uma string vazia
"", o nome do local será obtido apartir de variaveis de
ambiente com os mesmos nomes das categorias acima ou apartir de "LANG".
Se locale
for NULL
ou "0",
a definição de local não é modificada, apenas retorna a definição atual.
Se locale
for uma matriz ou conter parâmetros adicionais,
então cada elemento da matriz é tentado como um local até obter sucesso.
Isto é útil se um lugar é conhecido por nomes diferentes em sistemas
diferentes ou para prover um outro local se um estiver indisponível.
Nota: Passar varios lugares não esta disponível antes do PHP 4.3.0
setlocale() retorna o novo local ou FALSE
se a
funcionalidade de locais não estiver implementada em sua plataforma,
o local não existir ou a categoria for invalida.
Uma categoria invalida também gera uma mensagem de aviso.
Nomes de categoria/local podem ser encontrados em
» RFC 1766
e » ISO 639.
Nota:
O valor de retorno de setlocale() depende do sistema no qual o PHP esta sendo executado. Ele retorna exatamente o que a função setlocale do sistema retorna.
Usuários do windows encontraram informações úteis sobre as strings de
locale
no site
MSDN da Microsoft. Strings das línguas suportadas podem ser encontradas
» aqui as strings de
pais/região suportados »
aqui. Sistemas windows suportam códigos de três letras para pais/região
especificados por ISO 3166-Alpha-3, que
pode ser encontrada em Unicode website.
Exemplo #1 Exemplos setlocale()
<?php
/* Define o local para Holandês(usar pt_BR para o Português(Brasil) ) */
setlocale (LC_ALL, 'nl_NL');
/* Mostra: vrijdag 22 december 1978 */
echo strftime ("%A %e %B %Y", mktime (0, 0, 0, 12, 22, 1978));
/* Tenta diferentes nomes de local para o Alemão apartir do PHP 4.3.0 */
$loc_de = setlocale (LC_ALL, 'de_DE@euro', 'de_DE', 'de', 'ge');
echo "Preferred locale for german on this system is '$loc_de'";
?>
Exemplo #2 Exemplos para windows desetlocale()
<?php
/* Define o local para Holandês(usar ptb para o Português(Brasil) ) */
setlocale (LC_ALL, 'nld_nld');
/* Mostra: vrijdag 22 december 1978 */
echo strftime ("%A %d %B %Y", mktime (0, 0, 0, 12, 22, 1978));
/* Tenta diferentes nomes de local para o Alemão apartir do PHP 4.3.0 */
$loc_de = setlocale (LC_ALL, 'de_DE@euro', 'de_DE', 'deu_deu');
echo "Preferred locale for german on this system is '$loc_de'";
?>