Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Проблемы с кодировкой
Форумы портала PHP.SU » » Вопросы новичков » Проблемы с кодировкой

Страниц (1): [1]
 

1. lagun4ik - 05 Августа, 2011 - 10:18:17 - перейти к сообщению
Вообще так:
Есть переменна $html с кодом страницы, кодировка которой utf-8. Что-бы найти какой-либо текст (мне нужно найти ссылку) я использую регулярные выражения. Но что-бы их использовать нужно перекодировать utf-8 d windows-1251, так как регулярные выражения нормально не работают с utf-8. Обычно я делаю это функцией iconv. Но сталкнулся с проблемой - если есть какие-либо спецсимволы, код прекращает работу. Как это обойти? Или как с этим справиться?
p.s. я использую preg_*
2. Мелкий - 05 Августа, 2011 - 10:34:02 - перейти к сообщению
lagun4ik пишет:
так как регулярные выражения нормально не работают с utf-8

Используйте модификатор u
3. lagun4ik - 05 Августа, 2011 - 10:39:43 - перейти к сообщению
Мелкий пишет:
lagun4ik пишет:
так как регулярные выражения нормально не работают с utf-8

Используйте модификатор u

Пробовал, не помогает Огорчение =(
4. illy - 05 Августа, 2011 - 10:44:25 - перейти к сообщению
скопируй сюда страницу, кодировка которой utf-8
и страницу с iconv+preg_*
посмотрим чё там Хорошо
5. lagun4ik - 05 Августа, 2011 - 10:55:11 - перейти к сообщению
Вот такая штука (тут стриптэг отработал)
Спойлер (Отобразить)

То есть если присмотреться стопориться на "--¬"
Конечно можно было бы убрать какими либо методами эти символы, но код должен будет отрабатывать на многих сайтах, и если например он китайский, то опять будет затык на иероглифах. Когда уже сделают PHP6 с людской поддержкой utf8

 

Powered by ExBB FM 1.0 RC1