<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.strings.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'pt_BR',
  ),
  'this' => 
  array (
    0 => 'function.setlocale.php',
    1 => 'setlocale',
    2 => 'Define informa&ccedil;&atilde;o de localidade',
  ),
  'up' => 
  array (
    0 => 'ref.strings.php',
    1 => 'Fun&ccedil;&otilde;es de String',
  ),
  'prev' => 
  array (
    0 => 'function.rtrim.php',
    1 => 'rtrim',
  ),
  'next' => 
  array (
    0 => 'function.sha1.php',
    1 => 'sha1',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'pt_BR',
    'path' => 'reference/strings/functions/setlocale.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.setlocale" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">setlocale</h1>
  <p class="verinfo">(PHP 4, PHP 5, PHP 7, PHP 8)</p><p class="refpurpose"><span class="refname">setlocale</span> &mdash; <span class="dc-title">Define informação de localidade</span></p>

 </div>

 <div class="refsect1 description" id="refsect1-function.setlocale-description">
  <h3 class="title">Descrição</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>setlocale</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$category</code></span>, <span class="methodparam"><span class="type"><span class="type"><a href="language.types.null.php" class="type null">?</a></span><span class="type"><a href="language.types.string.php" class="type string">string</a></span></span> <code class="parameter">$locales</code></span>, <span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">...$rest</code></span>): <span class="type"><span class="type"><a href="language.types.string.php" class="type string">string</a></span>|<span class="type"><a href="language.types.singleton.php" class="type false">false</a></span></span></div>

  <p class="simpara">Assinatura alternativa (não suportada com argumentos nomeados):</p>
  <div class="methodsynopsis dc-description"><span class="methodname"><strong>setlocale</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$category</code></span>, <span class="methodparam"><span class="type"><a href="language.types.array.php" class="type array">array</a></span> <code class="parameter">$locale_array</code></span>): <span class="type"><span class="type"><a href="language.types.string.php" class="type string">string</a></span>|<span class="type"><a href="language.types.singleton.php" class="type false">false</a></span></span></div>

  <p class="para rdfs-comment">
   Define informação de localidade.
  </p>
  <div class="warning"><strong class="warning">Aviso</strong>
   <p class="para">
    As informações de localidade são mantidas por processo, não por thread.
    Se o PHP estiver sendo executado em uma API de servidor multithread,
    mudanças repentinas poderão ocorrer nas configurações de localidade enquanto um
    script estiver em execução, embora o script em si nunca tenha chamado
    <span class="function"><strong>setlocale()</strong></span>. Isso acontece devido a outros scripts
    sendo executados em diferentes threads do mesmo processo ao mesmo tempo,
    alterando a localidade de todo o processo usando <span class="function"><strong>setlocale()</strong></span>.
    No Windows, as informações de localidade são mantidas por thread a partir do PHP 7.0.5.
   </p>
  </div>
 </div>


 <div class="refsect1 parameters" id="refsect1-function.setlocale-parameters">
  <h3 class="title">Parâmetros</h3>
  <p class="para">
   <dl>
    
     <dt><code class="parameter">category</code></dt>
     <dd>
      <p class="para">
       <code class="parameter">category</code> é uma constante nomeada que especifica a
       categoria das funções afetadas pela configuração de localidade:
       <ul class="itemizedlist">
        <li class="listitem">
         <span class="simpara">
          <strong><code><a href="string.constants.php#constant.lc-all">LC_ALL</a></code></strong> para todas as opções abaixo
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <strong><code><a href="string.constants.php#constant.lc-collate">LC_COLLATE</a></code></strong> para comparação de strings, consulte
          <span class="function"><a href="function.strcoll.php" class="function">strcoll()</a></span>
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <strong><code><a href="string.constants.php#constant.lc-ctype">LC_CTYPE</a></code></strong> para classificação e conversão de caracteres, por
          exemplo <span class="function"><a href="function.ctype-alpha.php" class="function">ctype_alpha()</a></span>
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <strong><code><a href="string.constants.php#constant.lc-monetary">LC_MONETARY</a></code></strong> para <span class="function"><a href="function.localeconv.php" class="function">localeconv()</a></span>
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <strong><code><a href="string.constants.php#constant.lc-numeric">LC_NUMERIC</a></code></strong> para separador de decimais (Consulte também
          <span class="function"><a href="function.localeconv.php" class="function">localeconv()</a></span>)
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <strong><code><a href="string.constants.php#constant.lc-time">LC_TIME</a></code></strong> para formatação de data e horário com
          <span class="function"><a href="function.strftime.php" class="function">strftime()</a></span>
         </span>
        </li>
        <li class="listitem">
         <span class="simpara">
          <strong><code><a href="string.constants.php#constant.lc-messages">LC_MESSAGES</a></code></strong> para respostas de sistema (disponível se o PHP foi compilado com a
          <code class="literal">libintl</code>)
         </span>
        </li>
       </ul>
      </p>
     </dd>
    
    
     <dt><code class="parameter">locales</code></dt>
     <dd>
      <p class="para">
       Se <code class="parameter">locales</code> for uma string vazia
       <code class="literal">&quot;&quot;</code> ou <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong>, os nomes de localidade serão definidos a partir dos
       valores das variáveis ​​de ambiente com os mesmos nomes das categorias
       acima, ou de &quot;LANG&quot;.
      </p>
      <p class="para">
       Se <code class="parameter">locales</code> for <code class="literal">&quot;0&quot;</code>,
       a configuração de localidade não será afetada, apenas a configuração atual será retornada.
      </p>
      <p class="para">
       Se <code class="parameter">locales</code> for seguido por parâmetros
       adicionais, a função tentará definir cada parâmetro como um
       novo locale até obter sucesso. Isto é útil se uma localidade for conhecida por
       nomes diferentes em sistemas diferentes ou para fornecer um substituto
       para uma localidade possivelmente não disponível.
      </p>
     </dd>
    
    
     <dt><code class="parameter">rest</code></dt>
     <dd>
      <p class="para">
       Parâmetros de string opcionais para tentar como configurações de localidade até obter
       sucesso.
      </p>
     </dd>
    
    
     <dt><code class="parameter">locale_array</code></dt>
     <dd>
      <p class="para">
       A função tenta definir cada elemento do array como um
       novo local até obter sucesso. Isto é útil se uma localidade for conhecida por
       nomes diferentes em sistemas diferentes ou para fornecer um substituto
       para uma localidade possivelmente não disponível.
      </p>
     </dd>
    
   </dl>
   <blockquote class="note"><p><strong class="note">Nota</strong>: 
    <p class="para">
     No Windows, setlocale(LC_ALL, &#039;&#039;) define os nomes de localidade a partir dados
     configurações regionais e de idioma do sistema (acessíveis através do Painel de Controle).
    </p>
   </p></blockquote>
  </p>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.setlocale-returnvalues">
  <h3 class="title">Valor Retornado</h3>
  <p class="para">
   Retorna a nova localidade atual ou <strong><code><a href="reserved.constants.php#constant.false">false</a></code></strong> se a funcionalidade de localidade não
   estiver implementada em sua plataforma, a localidade especificada não existir ou
   o nome da categoria for inválido.
  </p>
  <p class="para">
   Um nome de categoria inválido também gera uma mensagem de alerta. Os nomes de categoria/localidade
   podem ser encontrados na <a href="https://datatracker.ietf.org/doc/html/rfc1766" class="link external">&raquo;&nbsp;RFC 1766</a>
   e na <a href="http://www.loc.gov/standards/iso639-2/php/code_list.php" class="link external">&raquo;&nbsp;ISO 639</a>.
   Sistemas diferentes possuem esquemas de nomenclatura diferentes para localidades.
  </p>
  <blockquote class="note"><p><strong class="note">Nota</strong>: 
   <p class="para">
    O valor de retorno de <span class="function"><strong>setlocale()</strong></span> depende
    do sistema que o PHP está sendo executado. Ele retorna exatamente
    o que a função de sistema <code class="literal">setlocale</code> retorna.
   </p>
  </p></blockquote>
 </div>

 <div class="refsect1 changelog" id="refsect1-function.setlocale-changelog">
  <h3 class="title">Registro de Alterações</h3>
  <table class="doctable informaltable">
   
    <thead>
     <tr>
      <th>Versão</th>
      <th>Descrição</th>
     </tr>

    </thead>

    <tbody class="tbody">
     <tr>
      <td>8.5.0</td>
      <td>
       Passar um inteiro <code class="literal">0</code> como o argumento de
       <code class="parameter">locales</code> não é mais suportado e
       agora lança um <span class="classname"><a href="class.typeerror.php" class="classname">TypeError</a></span>.
      </td>
     </tr>

    </tbody>
   
  </table>

 </div>

 <div class="refsect1 examples" id="refsect1-function.setlocale-examples">
  <h3 class="title">Exemplos</h3>
  <p class="para">
   <div class="example" id="example-1">
    <p><strong>Exemplo #1 Exemplos de <span class="function"><strong>setlocale()</strong></span></strong></p>
    <div class="example-contents">
<div class="annotation-non-interactive phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* Define a localidade para holandês */<br /></span><span style="color: #0000BB">setlocale</span><span style="color: #007700">(</span><span style="color: #0000BB">LC_ALL</span><span style="color: #007700">, </span><span style="color: #DD0000">'nl_NL'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Saída: vrijdag 22 december 1978 */<br /></span><span style="color: #007700">echo </span><span style="color: #0000BB">strftime</span><span style="color: #007700">(</span><span style="color: #DD0000">"%A %e %B %Y"</span><span style="color: #007700">, </span><span style="color: #0000BB">mktime</span><span style="color: #007700">(</span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">12</span><span style="color: #007700">, </span><span style="color: #0000BB">22</span><span style="color: #007700">, </span><span style="color: #0000BB">1978</span><span style="color: #007700">));<br /><br /></span><span style="color: #FF8000">/* tenta nomes de localidades diferentes possíves para alemão */<br /></span><span style="color: #0000BB">$loc_de </span><span style="color: #007700">= </span><span style="color: #0000BB">setlocale</span><span style="color: #007700">(</span><span style="color: #0000BB">LC_ALL</span><span style="color: #007700">, </span><span style="color: #DD0000">'de_DE@euro'</span><span style="color: #007700">, </span><span style="color: #DD0000">'de_DE'</span><span style="color: #007700">, </span><span style="color: #DD0000">'de'</span><span style="color: #007700">, </span><span style="color: #DD0000">'ge'</span><span style="color: #007700">);<br />echo </span><span style="color: #DD0000">"A localidade preferida para alemão neste sistema é '</span><span style="color: #0000BB">$loc_de</span><span style="color: #DD0000">'"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>
  </p>
  <p class="para">
   <div class="example" id="example-2">
    <p><strong>Exemplo #2 Recuperando a configuração atual de <span class="function"><strong>setlocale()</strong></span></strong></p>
    <div class="example-contents">
<div class="annotation-non-interactive phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* Recuperando a configuração atual */<br /></span><span style="color: #0000BB">$current </span><span style="color: #007700">= </span><span style="color: #0000BB">setlocale</span><span style="color: #007700">(</span><span style="color: #0000BB">LC_ALL</span><span style="color: #007700">, </span><span style="color: #0000BB">null</span><span style="color: #007700">);<br /><br />echo </span><span style="color: #DD0000">"Localidade atual: '</span><span style="color: #0000BB">$current</span><span style="color: #DD0000">'"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>
  </p>
  <p class="para">
   <div class="example" id="example-3">
    <p><strong>Exemplo #3 Exemplos de <span class="function"><strong>setlocale()</strong></span> para Windows</strong></p>
    <div class="example-contents">
<div class="annotation-non-interactive phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/* Define a localidade para holandês */<br /></span><span style="color: #0000BB">setlocale</span><span style="color: #007700">(</span><span style="color: #0000BB">LC_ALL</span><span style="color: #007700">, </span><span style="color: #DD0000">'nld_nld'</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/* Saída: vrijdag 22 december 1978 */<br /></span><span style="color: #007700">echo </span><span style="color: #0000BB">strftime</span><span style="color: #007700">(</span><span style="color: #DD0000">"%A %d %B %Y"</span><span style="color: #007700">, </span><span style="color: #0000BB">mktime</span><span style="color: #007700">(</span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">0</span><span style="color: #007700">, </span><span style="color: #0000BB">12</span><span style="color: #007700">, </span><span style="color: #0000BB">22</span><span style="color: #007700">, </span><span style="color: #0000BB">1978</span><span style="color: #007700">));<br /><br /></span><span style="color: #FF8000">/* tenta nomes de localidades diferentes possíves para alemão */<br /></span><span style="color: #0000BB">$loc_de </span><span style="color: #007700">= </span><span style="color: #0000BB">setlocale</span><span style="color: #007700">(</span><span style="color: #0000BB">LC_ALL</span><span style="color: #007700">, </span><span style="color: #DD0000">'de_DE@euro'</span><span style="color: #007700">, </span><span style="color: #DD0000">'de_DE'</span><span style="color: #007700">, </span><span style="color: #DD0000">'deu_deu'</span><span style="color: #007700">);<br />echo </span><span style="color: #DD0000">"A localidade preferida para alemão neste sistema é '</span><span style="color: #0000BB">$loc_de</span><span style="color: #DD0000">'"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
    </div>

   </div>
  </p>
 </div>


 <div class="refsect1 notes" id="refsect1-function.setlocale-notes">
  <h3 class="title">Notas</h3>
  <div class="tip"><strong class="tip">Dica</strong>
   <p class="para">
    Os usuários do Windows encontrarão informações úteis sobre
    strings de <code class="parameter">locales</code> no site
    <abbr title="Microsoft Developer Network">MSDN</abbr> da Microsoft. As strings de idioma suportadas podem ser
    encontradas na
    <a href="http://msdn.microsoft.com/en-us/library/39cwe7zf.aspx" class="link external">&raquo;&nbsp;documentação de strings de linguagem</a>
    e as strings de país/região suportadas podem ser encontradas na
    <a href="http://msdn.microsoft.com/en-us/library/cdax410z.aspx" class="link external">&raquo;&nbsp;documentação de strings de país/região</a>.
   </p>
  </div>
 </div>


</div><?php manual_footer($setup); ?>