![]() |
Модераторы: Aliance, skyboy, MoLeX, ksnk |
![]() ![]() ![]() |
|
americanets |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1100 Регистрация: 27.9.2006 Репутация: 1 Всего: 12 |
как заставить работать strtr при UTF-8 кодировке
например
выдает ebegeeezeyelmnepeseueheieie?e?e?m?mNm?m?m?m?m?m?m?_ -------------------- Пусть популярную музыку слушают те, среди кого она популярна |
|||
|
||||
Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 16 Всего: 261 |
http://ru2.php.net/manual/en/ref.mbstring.php надо использовать для строк, в которых один символ записывается в два байта, что как раз в utf и делается.
|
|||
|
||||
americanets |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1100 Регистрация: 27.9.2006 Репутация: 1 Всего: 12 |
понятно, поставил mb_string, нет функции аналога strtr, значит с utf-8 невозможны такие замечательные вещи как стремер Портера для вычленения корня слова в русских словах ?
А вообще с utf-8 много таких "проблем"? -------------------- Пусть популярную музыку слушают те, среди кого она популярна |
|||
|
||||
Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 16 Всего: 261 |
americanets, поиск по строке вообще лучше делать черещ strpos, аналог которой в mb - есть.
Второй вариант - регулярки.ф |
|||
|
||||
mishaSL |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 9 Всего: 54 |
americanets, дак
В чем проблема-то замени 27 строку на:
т.е. как предложил Mal Hack ![]() -------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
||||
|
|||||
americanets |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1100 Регистрация: 27.9.2006 Репутация: 1 Всего: 12 |
строку заменил, но выдает ???, а вот транслит так работает
Это сообщение отредактировал(а) americanets - 25.7.2007, 21:18 -------------------- Пусть популярную музыку слушают те, среди кого она популярна |
|||
|
||||
Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 16 Всего: 261 |
В регулярках надо указывать, что строка в utf8.
И setlocale устанаваливать. |
|||
|
||||
americanets |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1100 Регистрация: 27.9.2006 Репутация: 1 Всего: 12 |
это как, можно по подробнее
![]() -------------------- Пусть популярную музыку слушают те, среди кого она популярна |
|||
|
||||
Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 16 Всего: 261 |
http://ru2.php.net/manual/en/reference.pcr...n.modifiers.php
"U" - This modifier turns on additional functionality of PCRE that is incompatible with Perl. Pattern strings are treated as UTF-8. This modifier is available from PHP 4.1.0 or greater on Unix and from PHP 4.2.3 on win32. UTF-8 validity of the pattern is checked since PHP 4.3.5. |
|||
|
||||
americanets |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1100 Регистрация: 27.9.2006 Репутация: 1 Всего: 12 |
что-то не могу разобраться, плз хелп, горю
-------------------- Пусть популярную музыку слушают те, среди кого она популярна |
|||
|
||||
Anarki |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 14.3.2005 Репутация: 2 Всего: 11 |
Только u маленькая, U отучает от жадности.
http://phpnet/setlocale Как вариант перекодировать входную строку в cp1251 тот же и работать без проблем и переписываний чужих модулей. Ссылки по теме кодировок: http://phpclub.ru/faq/wakka.php?wakka=encodings&v=35q |
|||
|
||||
americanets |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1100 Регистрация: 27.9.2006 Репутация: 1 Всего: 12 |
не работает никак перевожу utf в 1251 аотом использую стремер затем опять результат в utf не работает дает исходное слово
-------------------- Пусть популярную музыку слушают те, среди кого она популярна |
|||
|
||||
mishaSL |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 9 Всего: 54 |
Да не нужно ничего никуда переводить, просто нужно немного код поправить.
Вот немного переделал эту реализацию стремера Портера:
Сохрани этот файл в utf-8. И все будет ок ![]() -------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
|||
|
||||
americanets |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1100 Регистрация: 27.9.2006 Репутация: 1 Всего: 12 |
спасибо, все работает
-------------------- Пусть популярную музыку слушают те, среди кого она популярна |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Тексты | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |