| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > UTF8toCP1251($str) Обрезает слово на 7м символе |
| Автор: DiMoN_TD 5.8.2009, 22:43 | ||
| Добрый день. Столкнулся вот с какой я проблемой: Почему-то, когда я пытаюсь декодировать из utf8 в cp1251, то русские слова (которые состоят из 7 букв), все нормально декодируется, зато как только больше букв, то обрезается на 7й букве слово (уже декодированное) Т.е. если я декодирую из utf8 слово "Асмодей" функцией UTF8toCP1251 , то на выходе и получаю слово "Асмодей", но если я пытаюсь этой же функцией декодировать слово "Асмодейко", то у меня на выходе получает "АсмодейР". Сама функция:
С чем это может быть связано? |
| Автор: WIPS 5.8.2009, 23:10 | ||
Попробуй с модификатором для юникода:
вдруг поможет |
| Автор: DiMoN_TD 5.8.2009, 23:18 |
| WIPS, Нет, не помогло, при замене той строки, функция на выходе вообще ничего не выдает :( Может есть еще какие-то варианты? |
| Автор: nerezus 5.8.2009, 23:18 |
| http://php.net/iconv ? |
| Автор: DiMoN_TD 5.8.2009, 23:23 |
| nerezus, Установлено iconv iconv support enabled iconv implementation "libiconv" iconv library version 1.9 Directive Local Value Master Value iconv.input_encoding ISO-8859-1 ISO-8859-1 iconv.internal_encoding ISO-8859-1 ISO-8859-1 iconv.output_encoding ISO-8859-1 ISO-8859-1 |
| Автор: gcc 5.8.2009, 23:27 |
| substr substr ($line, 0, 6); http://us2.php.net/manual/en/function.substr.php |
| Автор: DiMoN_TD 5.8.2009, 23:31 |
| gcc, это ты про то? Добавлено через 2 минуты и 18 секунд gcc, пляха муха, а ты прав оказался! Спасибо. Проблема была в том, что я обрезал ненужное кол-во символов (у меня макс. могло находиться 15 символов). Но я не учел, что при перекодировке, символов будет больше, нежели я ввел. Все.. проблема решена! Всем спасибо. |
| Автор: gcc 5.8.2009, 23:34 |
| убрать все после 7 символа Обрезает слово на 7м символе |