PHP. strtolower(strtoupper) и UTF-8

14.05.2009

strtoupper — Преобразует строку в верхний регистр
strtolower — Преобразует строку в нижний регистр
Все дело в том, что кириллицу в utf8 они вообще никак не преобразуют.
Вот функции, которые решают эту проблему:

function _strtolower($string)
{
$small = array('а','б','в','г','д','е','ё','ж','з','и','й',
'к','л','м','н','о','п','р','с','т','у','ф',
'х','ч','ц','ш','щ','э','ю','я','ы','ъ','ь',
'э', 'ю', 'я');
$large = array('А','Б','В','Г','Д','Е','Ё','Ж','З','И','Й',
'К','Л','М','Н','О','П','Р','С','Т','У','Ф',
'Х','Ч','Ц','Ш','Щ','Э','Ю','Я','Ы','Ъ','Ь',
'Э', 'Ю', 'Я');
return str_replace($large, $small, $string);
}

function _strtoupper($string)
{
$small = array('а','б','в','г','д','е','ё','ж','з','и','й',
'к','л','м','н','о','п','р','с','т','у','ф',
'х','ч','ц','ш','щ','э','ю','я','ы','ъ','ь',
'э', 'ю', 'я');
$large = array('А','Б','В','Г','Д','Е','Ё','Ж','З','И','Й',
'К','Л','М','Н','О','П','Р','С','Т','У','Ф',
'Х','Ч','Ц','Ш','Щ','Э','Ю','Я','Ы','Ъ','Ь',
'Э', 'Ю', 'Я');
return str_replace($small, $large, $string);
}
Теги: php ,
Категории: php , программирование ,
просмотров: 2819

Рекомендуемые записи

PHP. Часовые пояса. Локализация дат. Время.
Решение проблемы кодировки сайта
PHP. Deprecated: Function eregi() is deprecated in... Решение проблемы

Комментарии

Вячеслав 16.04.2010
Рабочие функции для кириллицы в UTF-8:
- mb_strtoupper($string, "UTF8")
- mb_strtolower($string, "UTF8")
Седьмой 17.05.2010
спасибо. копи-паст
Tania 11.08.2010
SPASIBO BOLISHOE!!!!!!
Игорь 28.09.2010
Спасибо огромное, сайт делать надо, а тут проблема такая, функции не работают с кириллицей, хорошо теперь запомню, как заставить переводить в верхний и нижний регистр, теперь бы разобраться, как первый символ строки в верхний регистр перевести, ucfirst не работает, боюсь как бы и остальные функции обработки строк с кириллицей не перестали работать.
Олег 17.08.2011
Спасибо....
немного доработал, для тех у кого в строке и кирилица и латиница
function _strtoupper($string)
{
$small = array('а','б','в','г','д','е','ё','ж','з','и','й',
'к','л','м','н','о','п','р','с','т','у','ф',
'х','ч','ц','ш','щ','э','ю','я','ы','ъ','ь',
'э', 'ю', 'я','a', 'b', 'c', 'd', 'e', 'f',
'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o',
'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x',
'y', 'z');
$large = array('А','Б','В','Г','Д','Е','Ё','Ж','З','И','Й',
'К','Л','М','Н','О','П','Р','С','Т','У','Ф',
'Х','Ч','Ц','Ш','Щ','Э','Ю','Я','Ы','Ъ','Ь',
'Э', 'Ю', 'Я','A', 'B', 'C', 'D', 'E', 'F',
'G', 'H', 'I', 'L', 'K', 'L', 'M', 'N', 'O',
'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X',
'Y', 'Z');
return str_replace($small, $large, $string);
}

добавить комментарий

Ваше имя: *
Ваш email: *
Ваш сайт:
Комментарий: *
*
Получать комментарии на email

Популярные

10 причин, чтобы отказаться от алкоголя и одна – чтобы употреблять алкоголь

Комментариев: 55 | просмотров: 11315
01.09.2009

О вреде микроволновой печи

Комментариев: 10 | просмотров: 4851
13.12.2009

Весело, весело встретим Новый GOD

Комментариев: 9 | просмотров: 2624
17.12.2009

Библия. Книга Судей. Глава 19

Комментариев: 8 | просмотров: 2083
30.08.2009

Масонская символика на долларе

Комментариев: 5 | просмотров: 7118
03.03.2009

PHP. Русский в транслит

Комментариев: 5 | просмотров: 3005
10.12.2009

PHP. strtolower(strtoupper) и UTF-8

Комментариев: 5 | просмотров: 2820
14.05.2009

Категории

Календарь

ПнВтСрЧтПнСбВс
12
3456789
10111213141516
17181920212223
24252627282930
31

Цитаты

Тот, кто пьет вино и пиво - тот пособник Тель-Авива!

Русская поговорка

Точки входа