Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Устарело: функция eregi_replace()

Автор вопроса: GarryОтветов: 2

Я получаю следующую ошибку при работе на PHP 5.3.8

Устарело: функция eregi_replace() устарела в /home/XXXXXX/public_html/admin/modifypoll.php в строке 49.

Это строка кода, может кто-нибудь помочь, пожалуйста

$question = eregi_replace('</?[a-z][a-z0-9]*[^<>]*>', '', $question );

Я не уверен, на что его изменить. Может ли кто-нибудь помочь, пожалуйста

  • возможный дубликат альтернативы для устаревшей функции PHP eregi_replace Steve Buzonas 31.12.2011

phpdeprecatedfunctionreplaceeregi

Ответы

Ответ 1 · рейтинг 5 · Marc B

все семейство функций ereg устарело в PHP и в какой-то момент будет удалено из языка. Заменой является семейство preg. По большей части, изменение простое:

preg_replace('/[^<>]>/i', '', $question);
^--           ^      ^^
  1. поменять эрег на прег
  2. добавить разделители (/)
  3. для совпадений без учета регистра (eregi) добавьте модификатор i

Ответ 2 · рейтинг 1 · ThiefMaster

$question = preg_replace('/<\/?[a-z][a-z0-9]*[^<>]*>/i', '', $question);

Кстати, вы можете просто использовать $question = strip_tags($question); для достижения того же самого без каких-либо регулярных выражений!

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы