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 :: Версия для печати :: Кирилица vs. функции preg
Форумы портала PHP.SU » » Кодировки и все смежное » Кирилица vs. функции preg

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

1. SunChase - 05 Февраля, 2012 - 04:32:52 - перейти к сообщению
Доброго...ээммм...почти утра О_о.

В который раз сидел и исполнял танец с бубном, пытаясь разобраться с обработкой строк при помощи регулярных выражений. Как ни крутил, что не перекодировал, что не пересоздавал, а фраза "This is проверка" в конечном итоге отображалась как "Пров<?><?>...". Потом, интереса ради, вместо preg вписал ereg и всё сразу заработало как надо.

Хотелось бы узнать ответ на 2 вопроса:
1) Что нужно сделать, чтобы выполнить тот же ансамбль, но используя функции preg_* ?
2) Гугл пока "разогревается", а потому спрошу тут: Что означает это философское замечание системы, которое я лицезрею в верхушке сайта при использовании ereg_replace - "Deprecated: Function eregi_replace() is deprecated" ?

Заранее благодарен.
2. Зверь - 05 Февраля, 2012 - 04:41:44 - перейти к сообщению
Это означает, что ereg_* функции в последующих версиях php будут полностью удалены, как сейчас в php 5.4 насчет этого не знаю, но разработчики настоятельно не рекомендуют их использовать
Цитата:
С версии PHP 5.3.0 эта функция считается УСТАРЕВШЕЙ. Крайне не рекомендуется полагаться на эту возможность.
3. SunChase - 05 Февраля, 2012 - 04:42:09 - перейти к сообщению
Update: оба вопроса снимаются с повестки.

Всем, кому не лень полопатить поиском по форуму в поисках решения подобной проблемы, посвящается. Ответ на первый вопрос по живому примеру:

$inp = preg_replace('/[[:punct:]]/','',$inp);
добавляем в конце шаблона поиска после / cимволы ui:

$inp = preg_replace('/[[:punct:]]/ui','',$inp);

 

Powered by ExBB FM 1.0 RC1