0

Подскажите, пожалуйста, как перевести первую букву строки в нижний регистр в Кириллице?

13bis
  • 40
  • 7

1 Answers1

1

Отделяем первый символ от остального текста и приводим к нижнему регистру, затем присоединяем его обратно.

$value = 'Родился на улице Герцена, в гастрономе номер двадцать два.';
$value .= ' Известный экономист, по призванию своему — библиотекарь.';

$firstChar = mb_substr($value, 0, 1); $firstChar = mb_strtolower($firstChar); $otherChars = mb_substr( $value, 1, mb_strlen($value) );

$value = $firstChar . $otherChars;

Более стильный вариант в виде функции, пользуйтесь на здоровье.

function firstCharToLowercase(string $value): string
{
    $firstChar = mb_substr($value, 0, 1);
    $firstChar = mb_strtolower($firstChar);
    $otherChars = mb_substr(
        $value,
        1,
        mb_strlen($value)
    );
return $firstChar . $otherChars;

}

Meow
  • 584
  • Если возникнут проблемы с кодировкой, напишите и мы что-нибудь придумаем. – Meow Sep 01 '20 at 14:27
  • В версии PHP 5.6 возникает синтаксическая ошибка: PHP Syntax Check: Parse error: syntax error, unexpected ':', expecting '{' in your code on line 1 – 13bis Sep 05 '20 at 11:56
  • 1
    Просто удалите тайп-хинты из первой строки: function firstCharToLowercase($value) {} – Meow Sep 05 '20 at 15:33