ereg_replace to preg_replace

У меня есть это предупреждение, устарело: функция ereg_replace() устарела, кто-то, пожалуйста, помогите мне.

ereg_replace:

ereg_replace('([^(folder)])/images/flash', '"/folder/images/flash', $echotemp);

preg_replace:

2 ответа

Устаревший метод - это метод, который в будущем будет исключен из используемого вами языка. Если у вас нет контроля над языковыми спецификациями и дорожной картой, у вас не так много рычагов.

Вы все еще можете использовать метод, но он может исчезнуть в будущем обновлении, и обычно поддержка метода просто рекомендует перейти на новые рекомендуемые способы выполнения действий.

Я рекомендую использовать метод замены для ereg_replace.

От: ereg_replace

Замечания:
Начиная с PHP 5.3.0 расширение regex устарело в пользу расширения PCRE. Вызов этой функции выдаст уведомление E_DEPRECATED. См. Список различий для получения справки по конвертации в PCRE.

,

Совет

preg_replace(), который использует Perl-совместимый синтаксис регулярных выражений, часто является более быстрой альтернативой ereg_replace().

Читайте: синтаксис регулярных выражений PCRE


И для вашего шаблона:

При использовании функций PCRE требуется, чтобы шаблон был заключен в разделители. Разделителем может быть любой не алфавитно-цифровой символ без обратной косой черты, без пробелов.

Часто используемыми разделителями являются косые черты (/), знаки хеша (#) и тильды (~).

Если в шаблоне необходимо сопоставить разделитель, его следует экранировать с помощью обратной косой черты. Если разделитель часто появляется внутри шаблона, рекомендуется выбрать другой разделитель, чтобы повысить удобочитаемость. Итак, ваш шаблон должен выглядеть так:

([^(folder)])/images/flash
[], который вы используете в [^(папка)], предназначен для указания набора символов, а не целого слова. Лучше использовать простые шаблоны и не усложнять шаблон поиска.

%^/folder/images/flash%
Это проще.I am using % as delimiter for readability. Не используется #, потому что stackru будет рассматривать его как заголовок:P.

Другие вопросы по тегам