1

Ucfirst: примеры (PHP)

Функция ucfirst в PHP: преобразование первой буквы строки
Раздел: Работа со строками
ucfirst(string string): string

Функция ucfirst в PHP

Основное назначение

Функция ucfirst преобразует первый символ строки в верхний регистр. Эта функция часто применяется для форматирования текстовых данных, таких как имена, названия или предложения, где требуется капитализация первого символа.

Синтаксис и параметры
ucfirst(string $string): string

Функция принимает один обязательный параметр:

  • $string - входная строка, первый символ которой будет преобразован в верхний регистр.

Возвращаемое значение - строка с первым символом в верхнем регистре.

Примеры использования ucfirst

Базовые примеры

Простое использование с латинскими символами:

echo ucfirst('hello world');
Hello world

Работа с кириллическими символами при правильной кодировке:

echo ucfirst('привет мир');
Привет мир
Специальные случаи

Если строка начинается с цифры или специального символа:

echo ucfirst('123abc');
123abc

Строка, начинающаяся с пробела:

echo ucfirst(' test');
 test

Альтернативные функции PHP

mb_ucfirst для многобайтовых строк

Для корректной работы с UTF-8 строками используется пользовательская функция:

function mb_ucfirst($string) {
    $firstChar = mb_strtoupper(mb_substr($string, 0, 1));
    return $firstChar . mb_substr($string, 1);
}
echo mb_ucfirst('это тест');
Это тест
Другие родственные функции
  • ucwords - преобразует в верхний регистр первый символ каждого слова в строке
  • strtoupper - преобразует всю строку в верхний регистр
  • lcfirst - преобразует первый символ строки в нижний регистр

Типичные ошибки

Проблемы с кодировкой

Некорректная работа с кириллицей в старых версиях PHP:

echo ucfirst('яблоко'); // Может работать некорректно
Обработка пустых строк
echo ucfirst(''); // Возвращает пустую строку без ошибки
Неожиданное поведение с пробелами
echo ucfirst(' несколько слов');
 несколько слов

Изменения в версиях PHP

PHP 7.3 и выше

Начиная с PHP 7.3, улучшена обработка многобайтовых строк в сочетании с функциями mbstring. Однако сама функция ucfirst не претерпела значительных изменений с PHP 4.

PHP 8.x

В PHP 8 не было внесено изменений в поведение ucfirst. Функция сохраняет обратную совместимость со всеми предыдущими версиями.

Расширенные примеры использования

Обработка массива строк
Пример php
$names = ['иван', 'мария', 'петр'];
$capitalized = array_map('ucfirst', $names);
print_r($capitalized);
Array
(
    [0] => Иван
    [1] => Мария
    [2] => Петр
)
Комбинация с trim()
Пример php
echo ucfirst(trim('  строка с пробелами  '));
Строка с пробелами
Пользовательская функция для предложений
Пример php
function capitalizeSentence($sentence) {
    $sentences = explode('. ', $sentence);
    $capitalized = array_map('ucfirst', $sentences);
    return implode('. ', $capitalized);
}
echo capitalizeSentence('первое предложение. второе предложение.');
Первое предложение. Второе предложение.
Работа с разными языками
Пример php
// Специальная обработка для турецкого языка
setlocale(LC_CTYPE, 'tr_TR.UTF-8');
echo ucfirst('ışık'); // Может работать некорректно без mb_ucfirst

Аналоги в других языках программирования

Ucfirst в Python

Метод capitalize() строкового объекта:

text = 'пример текста'
print(text.capitalize())
Пример текста

Ucfirst в Javascript

Комбинация методов charAt() и slice():

let text = 'javascript пример';
console.log(text.charAt(0).toUpperCase() + text.slice(1));
Javascript пример

Ucfirst в MySQL

Функция CONCAT() с UPPER() и SUBSTRING():

SELECT CONCAT(UPPER(SUBSTRING('mysql', 1, 1)), SUBSTRING('mysql', 2));
Mysql

PHP ucfirst function comments

En
Ucfirst Make a string's first character uppercase