PHP 8.3.4 Released!

lcfirst

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

lcfirstMake a string's first character lowercase

Descrizione

lcfirst(string $string): string

Returns a string with the first character of string lowercased if that character is an ASCII character in the range "A" (0x41) to "Z" (0x5a).

Elenco dei parametri

string

The input string.

Valori restituiti

Returns the resulting string.

Log delle modifiche

Versione Descrizione
8.2.0 Case conversion no longer depends on the locale set with setlocale(). Only ASCII characters will be converted.

Esempi

Example #1 lcfirst() example

<?php
$foo
= 'HelloWorld';
$foo = lcfirst($foo); // helloWorld

$bar = 'HELLO WORLD!';
$bar = lcfirst($bar); // hELLO WORLD!
$bar = lcfirst(strtoupper($bar)); // hELLO WORLD!
?>

Vedere anche:

  • ucfirst() - Converte in maiuscolo il primo carattere del testo
  • strtolower() - Converte in minuscolo una stringa
  • strtoupper() - Converte in maiuscolo una stringa
  • ucwords() - Converte in maiuscolo il primo carattere di ogni parola di una stringa

add a note

User Contributed Notes 4 notes

up
19
phpnet at katylavallee dot com
14 years ago
Easiest work-around I've found for <5.3:
<?php

$string
= "CamelCase"
$string{0} = strtolower($string{0})
echo
$string; // outputs camelCase

?>
up
6
alex aulbach
15 years ago
In some cases maybe more useful?

$lower = strtolower( substr($upper,0,1) ) . substr($upper,1);
up
2
harmor
15 years ago
A slight modification from Northie's post here ( http://us2.php.net/manual/en/function.ucfirst.php#68443), where lcfirst may not exist in your PHP build:

<?php

if(false === function_exists('lcfirst'))
{
/**
* Make a string's first character lowercase
*
* @param string $str
* @return string the resulting string.
*/
function lcfirst( $str ) {
$str[0] = strtolower($str[0]);
return (string)
$str;
}
}

/* Tests */
echo var_dump(lcFirst(NULL)).'<br />'; /* string(0) "" */
echo var_dump(lcFirst('')) .'<br />'; /* string(0) "" */
echo var_dump(lcFirst('S')) .'<br />'; /* string(1) "S" */
echo var_dump(lcFirst('É')) .'<br />'; /* string(0) "�" */
echo var_dump(lcFirst('Hello World!!!')); /* string(14) "hello World!!!" */
up
-23
ahlers_wim at hotmail dot com
15 years ago
As of PHP release 6 direct reference modification is not permitted any more.
Reference modification is the process of manipulating characters within a string by means of the instruction such as:
$str[0] in the code line: $str[0] = strtolower($str[0]);

For this reason I have recoded the lcfirst function (on function_exists('lcfirst') === false) as follows:

<?php
if ( false === function_exists('lcfirst') ):
function
lcfirst( $str )
{ return (string)(
strtolower(substr($str,0,1)).substr($str,1));}
endif;
?>

Remarks:
Also notice that I have used the more modern scope delimeters (if:-endif;) and I have also removed the unnecessary intermediate result. That is, the manipulation is returned directly.
To Top