|
|
|
| Здравствуйте. Проблема возникла на ровном месте, после того как мне пришлось перевести свою работу на латвийский язык. Изначально скрипт php был написан под кирилицу (cp-1251), все регулярки проверяли доспустимые символы на ввод либо английские, либо русские буквы. Все работало как надо. Вобщем было обычное php приложение под русский сайт и работал он с базой в кирилице. Теперь все это нужно перевести на латвийский язык, где встречаются необычные символы типа :[img]http://radar.randomstar.org/code1.png[/img]
Я так понимаю, что все это дело надо теперь перделать в юникод (utf-8). Начал я с базы. Сменил кодировку в таблицах, в конфиге сменил mysql_query("SET NAMES 'utf8'"); Вроде бы все наладилось. Слова с латвийскими символами стали нормально выводится в браузере. Теперь дошла очередь до php. PHP такие символы , к слжалению, не понимает. Он их просто преобразует в обычную латиницу.
Например : проверим строку на ввод латвийских букв :
[img]http://radar.randomstar.org/code.png[/img]
Выводит почему то латиницу...
Как решить подобную проблему? Кто с подобным сталкивался?
PS: А как же китайцы работают с php?
Странно, форум все эти необычные буквы преобразовал в спецсимволы... форум тоже на кирилице написан.
Вот ссылка на латвийский алфавит : http://www.masteranylanguage.com/cgi/f/rView.pl?pc=MALLatvian&tc=Alphabet&vm=fc&sw=1&la=ru | |
|
|
|
|
|
|
|
для: Disel
(12.08.2010 в 10:55)
| | Может php файл преобразовать в UTF формат и серверу указать что б отдавал страницу в UTF формате. | |
|
|
|
|
|
|
|
для: Disel
(12.08.2010 в 10:55)
| | Вы озверели там что ли, исходный код в виде скриншотов выкладывать?
у шаблонов PCRE-функций (в частности preg_match()) ест специальный модификатор u , переводящий движок регулярных выражений в режим utf-8 . preg_match('/pattern/iu', ...)
Есть также mbstring-аналоги обычных функций, умеющие работать в utf-8. | |
|
|
|