Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Изменение регистра функцией strtr 
V
    Опции темы
Vitkaz
Дата 6.3.2013, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 90
Регистрация: 29.11.2006

Репутация: нет
Всего: нет



Всем привет!

Столкнулся со следующей проблемой.

В строке все кирилические символы нужно заменить на латинские.

Входная строка может быть как на кириллице, так и на латинице. 

задаю массив вида
Код

$converter = array(

                'а' => 'a',   'б' => 'b',   'в' => 'v',

                'г' => 'g',   'д' => 'd',   'е' => 'e',

                'ё' => 'e',   'ж' => 'zh',  'з' => 'z',

                'и' => 'i',   'й' => 'y',   'к' => 'k',

                'л' => 'l',   'м' => 'm',   'н' => 'n', ....

                'А' => 'A',   'Б' => 'B',   'В' => 'V',

                'Г' => 'G',   'Д' => 'D',   'Е' => 'E',

                'Ё' => 'E',   'Ж' => 'Zh',  'З' => 'Z',

                'И' => 'I',   'Й' => 'Y',   'К' => 'K',...
}


передаю его вместе с исходной строкой в функцию strtr. Символы заменяются, но строка почему-то возвращается в нижнем регистре, хотя исходная строка в верхнем.  В чем может быть причина? Помогите пожалуйста.

PM MAIL   Вверх
Aliance
Дата 7.3.2013, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 14
Всего: 137



Сам код покажи.
PM MAIL WWW ICQ Skype   Вверх
Vitkaz
Дата 8.3.2013, 07:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 90
Регистрация: 29.11.2006

Репутация: нет
Всего: нет



Вот такой  простой код

Код

function translit($string) {

            $converter = array(

                'а' => 'a',   'б' => 'b',   'в' => 'v',

                'г' => 'g',   'д' => 'd',   'е' => 'e',

                'ё' => 'e',   'ж' => 'zh',  'з' => 'z',

                'и' => 'i',   'й' => 'y',   'к' => 'k',....

                

                'А' => 'A',   'Б' => 'B',   'В' => 'V',

                'Г' => 'G',   'Д' => 'D',   'Е' => 'E',

                'Ё' => 'E',   'Ж' => 'Zh',  'З' => 'Z',

                'И' => 'I',   'Й' => 'Y',   'К' => 'K',...
                
            );

            return strtr($string, $converter);

        }

echo translit('КиРиЛлИца - KiRiLlIca');



Тестил на другом сервере, все в порядке. Может ли быть причина в настройках сервера? 

PM MAIL   Вверх
Gold Dragon
Дата 8.3.2013, 10:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: 10
Всего: 71



а может проблема в том что функция strtr() работает только с однобайтовыми символами


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0618 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.