- lcfirst
- Список параметров
- Возвращаемые значения
- Список изменений
- Примеры
- Смотрите также
- User Contributed Notes 4 notes
- Замена регистра в строках PHP
- Проверка, является ли буква прописной или строчной
- Первая заглавная буква
- Для UTF-8:
- Первая строчная
- Для UTF-8:
- Все заглавные буквы
- Для UTF-8:
- Все строчные буквы
- Для UTF-8:
- Заглавная буква в каждом слове
- Для UTF-8:
- Инверсия регистра
- Комментарии 1
lcfirst
Возвращает строку string , первый символ которой был преобразован в нижний регистр, если этот символ является ASCII-символом в диапазоне от «A» (0x41) до «Z» (0x5a).
Список параметров
Возвращаемые значения
Возвращает результирующую строку.
Список изменений
Версия | Описание |
---|---|
8.2.0 | Преобразование регистра больше не зависит от локали, установленной с помощью функции setlocale() . Будут преобразованы только символы ASCII. |
Примеры
Пример #1 Пример использования lcfirst()
$foo = ‘HelloWorld’ ;
$foo = lcfirst ( $foo ); // helloWorld
?php
$bar = ‘HELLO WORLD!’ ;
$bar = lcfirst ( $bar ); // hELLO WORLD!
$bar = lcfirst ( strtoupper ( $bar )); // hELLO WORLD!
?>
Смотрите также
- ucfirst() — Преобразует первый символ строки в верхний регистр
- strtolower() — Преобразует строку в нижний регистр
- strtoupper() — Преобразует строку в верхний регистр
- ucwords() — Преобразует в верхний регистр первый символ каждого слова в строке
User Contributed Notes 4 notes
Easiest work-around I’ve found for <5.3:
5.3:
$string = «CamelCase»
$string < 0 >= strtolower ( $string < 0 >)
echo $string ; // outputs camelCase
In some cases maybe more useful?
$lower = strtolower( substr($upper,0,1) ) . substr($upper,1);
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:
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 )). ‘
‘ ; /* string(0) «» */
echo var_dump ( lcFirst ( » )) . ‘
‘ ; /* string(0) «» */
echo var_dump ( lcFirst ( ‘S’ )) . ‘
‘ ; /* string(1) «S» */
echo var_dump ( lcFirst ( ‘É’ )) . ‘
‘ ; /* string(0) «�» */
echo var_dump ( lcFirst ( ‘Hello World. ‘ )); /* string(14) «hello World. » */
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:
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.
Замена регистра в строках PHP
Список PHP-функций для изменения регистра символов в строках и примеры их использования.
Проверка, является ли буква прописной или строчной
Функция ctype_upper($string) – определяет, являются ли все буквы в строке в верхнем регистре.
$str = 'Ы'; if (ctype_upper($str)) < echo 'Заглавная'; >else
Вариант для кириллицы в кодировке UTF-8:
$str = 'Ы'; if (mb_strtolower($str) !== $str) < echo 'Заглавная'; >else < echo 'строчная'; >// Выведется «Заглавная»
Пример определения регистра для первой буквы в строке:
$text = 'Привет мир!'; $chr = mb_substr($text, 0, 1); if (mb_strtolower($chr) !== $chr) < echo 'Заглавная'; >else < echo 'строчная'; >// Выведется «Заглавная»
Первая заглавная буква
ucfirst($string) — преобразует первый символ строки в верхний регистр.
$text = 'привет Мир!'; echo ucfirst($text);
Для UTF-8:
if(!function_exists('mb_ucfirst')) < function mb_ucfirst($str) < $fc = mb_strtoupper(mb_substr($str, 0, 1)); return $fc . mb_substr($str, 1); >> $text = 'привет Мир!'; echo mb_ucfirst($text); // Привет Мир!
Первая строчная
ucfirst($string) — преобразует первый символ строки в верхний регистр.
$text = 'Привет Мир!'; echo lcfirst($text);
Для UTF-8:
if(!function_exists('mb_lcfirst')) < function mb_lcfirst($str) < $fc = mb_strtolower(mb_substr($str, 0, 1)); return $fc . mb_substr($str, 1); >> $text = 'Привет Мир!'; echo mb_lcfirst($text); // привет Мир!
Все заглавные буквы
Для UTF-8:
$text = 'привет Мир!'; echo mb_strtoupper($text); // ПРИВЕТ МИР!
Все строчные буквы
$text = 'Привет Мир!'; echo strtolower($text);
Для UTF-8:
$text = 'Привет Мир!'; echo mb_strtolower($text); // привет мир!
Заглавная буква в каждом слове
$text = 'привет мир!'; echo ucwords($text);
Для UTF-8:
if(!function_exists('mb_ucwords')) < function mb_ucwords($str) < $str = mb_convert_case($str, MB_CASE_TITLE, "UTF-8"); return ($str); >> $text = 'привет мир!'; echo mb_ucwords($text); // Привет Мир!
Инверсия регистра
function mb_flip_case($string) < $characters = preg_split('/(?$char) < if (mb_strtolower($char, "UTF-8") != $char) < $char = mb_strtolower($char, 'UTF-8'); >else < $char = mb_strtoupper($char, 'UTF-8'); >$characters[$key] = $char; > return implode('', $characters); > $text = 'Привет Мир!'; echo mb_flip_case($text); // пРИВЕТ мИР!
Комментарии 1
function invertCase($text)
$string = »;
/*
Решение №1
$mb_strlen = mb_strlen($text);
$i = $mb_strlen;
while ($i > 0) $i—;
$char = mb_substr($text, $i, 1);
$char = (mb_strtolower($char) === $char) ? mb_strtoupper($char) : mb_strtolower($char);
$string = $char.$string;
>
*/
// Решение №2
$arr = mb_str_split($text, 1);
foreach ($arr as $char) $char = (mb_strtolower($char) === $char) ? mb_strtoupper($char) : mb_strtolower($char);
$string .= $char;
>
return $string;
>
Авторизуйтесь, чтобы добавить комментарий.