W3docs

lcfirst()

Aprenda sobre a função lcfirst() do PHP, que converte o primeiro caractere de uma string para minúsculo. Veja sintaxe, exemplos e casos de uso.

A função lcfirst() do PHP torna o primeiro caractere de uma string minúsculo e retorna a string modificada. Apenas o primeiro caractere é alterado — o restante da string permanece exatamente como está. Esta página aborda sua sintaxe, valor de retorno, comportamento com não-letras e Unicode, e as situações comuns em que é útil.

Sintaxe

lcfirst(string $string): string

Aceita um único parâmetro obrigatório e retorna uma nova string — lcfirst() não modifica a variável original no lugar.

ParâmetroDescrição
$stringA string de entrada cujo primeiro caractere deve ser convertido para minúsculo.

Valor de retorno: a string resultante com seu primeiro caractere em minúsculo.

Exemplo básico

php— editable, runs on the server

Apenas o H inicial muda; o restante permanece intocado:

hello World!

Quando devo usá-la?

lcfirst() é pequena, mas útil sempre que o primeiro caractere tem um significado especial:

  • Gerando identificadores camelCase. Transforme GetUserName em getUserName para nomes de métodos ou propriedades.
  • Normalizando entradas do usuário que podem chegar capitalizadas quando você as armazena em minúsculo.
  • Formatação de frases/listas, em que a primeira palavra de um fragmento não deve começar com letra maiúscula.
<?php
// PascalCase -> camelCase
echo lcfirst("UserProfile"); // userProfile
?>
userProfile

Comportamento com não-letras e entradas já em minúsculo

Se o primeiro caractere não for uma letra maiúscula — um dígito, símbolo, espaço ou uma letra já em minúsculo — lcfirst() retorna a string sem alterações.

<?php
echo lcfirst("Hello"), "\n"; // hello
echo lcfirst("123ABC"), "\n"; // 123ABC (first char is a digit)
echo lcfirst(" Hello"), "\n"; // " Hello" (leading space is unchanged)
echo lcfirst(""), "\n";       // "" (empty string)
?>
hello
123ABC
 Hello

Atenção: lcfirst() é baseada em bytes, não é compatível com Unicode

lcfirst() lida apenas com letras ASCII de byte único. Caracteres multibyte, como letras acentuadas ou não latinas, não são convertidos corretamente para minúsculo, pois a função opera no primeiro byte em vez do primeiro caractere.

<?php
echo lcfirst("Élan"); // stays "Élan" (É is multibyte)
?>
Élan

Para strings multibyte, converta o primeiro caractere para minúsculo manualmente com mb_strtolower() e mb_substr():

<?php
$str = "Élan";
$first = mb_strtolower(mb_substr($str, 0, 1), "UTF-8");
echo $first . mb_substr($str, 1); // élan
?>
élan

Funções relacionadas

  • ucfirst() — o oposto: torna o primeiro caractere maiúsculo.
  • ucwords() — torna maiúscula a primeira letra de cada palavra.
  • strtolower() — converte toda a string para minúsculo.
  • strtoupper() — converte toda a string para maiúsculo.

Prática

Prática
O que a função lcFirst do PHP faz?
O que a função lcFirst do PHP faz?
Was this page helpful?