Вчера весь вечер убил =/
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Вчера весь вечер убил =/ - 2009-09-07 10:34:09.303333
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
Пишу для того, чтобы не наступали на мои грабли. Код:$str = "\x03\x00\x00\x00\x42\xE0\x83\x45\x00\x6D\x34\x34\x2E\x54\x68";
echo count( str_split( $str ) ) . " - " . strlen( $str ). "\n"; Везде выдает "15 - 15", у меня написало "15 - 13". Угрохал кучу времени. Даже пересобрал пхп. Нифига. С утра на свежую голову поковырялся в php.ini. Как оказалось это не бага, а специфичная настройка.mbstring.func_overload = 2
mbstring.internal_encoding = UTF-8 Те все строковые функции были перегружены: значение mbstring.func_overload функция-оригинал перегруженная функция
2 strlen() mb_strlen()
2 strpos() mb_strpos()
2 strrpos() mb_strrpos()
2 substr() mb_substr() В очередной раз для себя доказал, что если что-то идет не так, то дело не в языке, а в программисте.
|
|
|
RE: Вчера весь вечер убил =/ - 2009-09-07 10:46:55.516666
|
|
|
codeismy.name
Сообщений: 618
Оценки: 0
Присоединился: 2009-07-19 00:30:13.200000
|
хех.. у меня та же бага возникала уже давно для функции substr() я тогда промучался 2 дня.. но выход таки нашел.. теперь практически для всех проэктов если надо работать с текстом использую функци мб_стринг
|
|
|
RE: Вчера весь вечер убил =/ - 2009-09-07 17:29:25.320000
|
|
|
Agent Smith
Сообщений: 976
Оценки: 0
Присоединился: 2007-04-10 21:56:49.593333
|
А ещё в функции str_split есть такой баг: в какой бы кодировке не была строка $str, элементы масива почему-то возвращает в другой кодировке (Windows-1251 кажись, но не точно UTF-8). Я с этим вчера с 9-ти утра мучился:)
|
|
|
RE: Вчера весь вечер убил =/ - 2009-09-07 20:15:56.743333
|
|
|
oRb
Сообщений: 4044
Оценки: 597
Присоединился: 2007-03-28 18:45:06.630000
|
На сколько я понимаю, str_split не должен работать с мультибайтовыми кодировками.
|
|
|
|
|