[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Геморрой с utf-8
LRCenter
Тут кто-то весело орал: переходи на utf-8 и ноль проблем.
Я думал проблемы ограничатся только BOM. Ну это ладно, сохранил без него.

Куда более серьезные проблемы начались, когда перестало корректно работать куча функций по работе со строками, если эти строки содержали кириллицу. Например str_ireplace, strtolower и upper тоже. Что с этим-то делать? Изобратать самописные велосипеды типа:

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


?

И еще вопрос, допустим я создаю текстовый файл средствами php, пишу в него строку и сохраняю. Запишет ли php BOM в файл или нет?



Спустя 44 минуты, 16 секунд (18.11.2010 - 14:41) twin написал(а):
Цитата
Что с этим-то делать? Изобратать самописные велосипеды типа:

Читать мануал. В частности про mbstring библиотеку.

Цитата
Запишет ли php BOM в файл или нет?
Нет.

Спустя 11 минут, 43 секунды (18.11.2010 - 14:53) LRCenter написал(а):
Думал про mbstring, но он не на каждом хостинге установлен. Уж лучше велосипед, чем фатальная ошибка из-за отсутствия функции дополнительной библиотеки sad.gif

Спустя 1 минута, 10 секунд (18.11.2010 - 14:54) twin написал(а):
Беги с того хостинга, где её нет. И как можно быстрее.
Лично я таких не встречал.

Спустя 2 минуты, 28 секунд (18.11.2010 - 14:57) LRCenter написал(а):
twin, т.е. вы хотите сказать что mbstring такой стандарт, как например GD?

Спустя 7 минут, 40 секунд (18.11.2010 - 15:04) LRCenter написал(а):
У меня на локалхосте есть файл php_mbstring.dll, но он видимо неподключен, т.к. функции mbstring не работают. Как можно подключить его?

Спустя 6 минут, 41 секунда (18.11.2010 - 15:11) LRCenter написал(а):
Я правильно понимаю что в файле php.ini надо заменить строку ";extension=php_mbstring.dll"
на "extension=php_mbstring.dll"?

Спустя 3 минуты, 59 секунд (18.11.2010 - 15:15) twin написал(а):
Ну вот и сам допер)))

Спустя 5 минут, 17 секунд (18.11.2010 - 15:20) LRCenter написал(а):
:) Ага, только там еще после куча строк типа:


[mbstring]
; language for internal character representation.
;mbstring.language = Japanese

; internal/script encoding.
; Some encoding cannot work as internal encoding.
; (e.g. SJIS, BIG5, ISO-2022-*)
;mbstring.internal_encoding = EUC-JP

; http input encoding.
;mbstring.http_input = auto

; http output encoding. mb_output_handler must be
; registered as output buffer to function
;mbstring.http_output = SJIS

; enable automatic encoding translation accoding to
; mbstring.internal_encoding setting. Input chars are
; converted to internal encoding by setting this to On.
; Note: Do _not_ use automatic encoding translation for
; portable libs/applications.
;mbstring.encoding_translation = Off

; automatic encoding detection order.
; auto means
;mbstring.detect_order = auto

; substitute_character used when character cannot be converted
; one from another
;mbstring.substitute_character = none;

; overload(replace) single byte functions by mbstring functions.
; mail(), ereg(), etc are overloaded by mb_send_mail(), mb_ereg(),
; etc. Possible values are 0,1,2,4 or combination of them.
; For example, 7 for overload everything.
; 0: No overload
; 1: Overload mail() function
; 2: Overload str*() functions
; 4: Overload ereg*() functions
;mbstring.func_overload = 0



А с ними че делать? Менять что-нибудь?

Спустя 30 минут, 22 секунды (18.11.2010 - 15:51) twin написал(а):
Ничего не надо. Раскомментил строчку и перезапустил сервак. Всех то делов.

Спустя 9 минут, 2 секунды (18.11.2010 - 16:00) LRCenter написал(а):
twin, а нафиг там Японский указан в первой настройке? smile.gif

Спустя 16 минут, 50 секунд (18.11.2010 - 16:17) Basili4 написал(а):
LRCenter
приходь загнивающего запада

Спустя 9 минут, 15 секунд (18.11.2010 - 16:26) LRCenter написал(а):
Все понятно - ничё не понятно.
Ладно пофиг, главное чтоб работало нормально smile.gif


_____________
Меньше кода - меньше багов ©
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.