Метод 1: базовое использование ucwords()
Функция ucwords() записывает первый символ каждого слова в строке с заглавной буквы. Вот простой пример:
$string = "hello world";
$capitalizedString = ucwords($string);
echo $capitalizedString;
Вывод: «Привет, мир!»
Метод 2: обработка неанглийских символов
Функция ucwords() в первую очередь предназначена для английского текста. Однако вы можете расширить его функциональность для обработки неанглийских символов, используя функцию mb_ucwords() из расширения Multibyte String. Вот пример:
$string = "bonjour tout le monde";
$capitalizedString = mb_ucwords($string, 'UTF-8');
echo $capitalizedString;
Выход: «Bonjour Tout Le Monde»
Метод 3: настройка разделителей
По умолчанию ucwords() пишет с заглавной буквы первый символ каждого слова, разделенного пробелами. Однако вы можете настроить разделители, предоставив функции необязательный второй аргумент. Вот пример:
$string = "hello_world-php";
$capitalizedString = ucwords($string, '_-');
echo $capitalizedString;
Вывод: «Hello_World-PHP»
Метод 4: обработка апострофов
По умолчанию функция ucwords() не обрабатывает апострофы должным образом. Чтобы правильно писать слова с апострофами с заглавной буквы, вы можете использовать пользовательскую функцию, которая учитывает определенные правила. Вот пример:
function ucwordsWithApostrophes($string) {
return preg_replace_callback(
"/\b([a-z])/u",
function($matches) {
return mb_strtoupper($matches[0]);
},
$string
);
}
$string = "mary's lamb";
$capitalizedString = ucwordsWithApostrophes($string);
echo $capitalizedString;
Результат: «Ягненок Мэри»
Не забудьте использовать примеры кода, приведенные в статье, для реализации этих методов в вашей собственной базе кода. Благодаря этому вы сможете улучшить взаимодействие с пользователем и поддерживать единообразное визуальное представление текста в ваших приложениях PHP.