Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Как перевести строку в верхний или нижний регистр

Короткий ответ

Используйте функции с приставкой mb_ — они работают с любым алфавитом:

<?php
 
echo mb_strtoupper('привет, world'), "\n";
echo mb_strtolower('ПРИВЕТ, World');

Результат:

ПРИВЕТ, WORLD
привет, world

Почему не strtoupper()

Обычные функции меняют только латиницу:

<?php
 
echo strtoupper('привет, world');

Результат:

привет, WORLD

Заглавная первая буква

Для кириллицы первую букву переводят отдельно:

<?php
 
$text = 'привет';
 
echo mb_strtoupper(mb_substr($text, 0, 1)) . mb_substr($text, 1);

Результат:

Привет

Функции из этого ответа

  • mb_strtoupper — Переводит строку в верхний регистр.
  • mb_strtolower — Переводит строку в нижний регистр с учётом любого алфавита.
  • strtoupper — Переводит латинские буквы в верхний регистр.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.