У меня есть проект php, который требует обновления с php 5.3 до php 5.6 (и, в конечном итоге, до php7), и из того, что я вижу в документации по PHP, модификатор / e для preg_replace устарел и должен быть удален, и у меня есть искать все его вхождения и удалять их (и заменять их чем-то другим, например, preg_replace_callback).
Проблема в том, что есть много обращений к preg_replace (около 2100 вызовов), и проверка каждого из них заняла бы много времени, и я хотел бы создать скрипт (php-скрипт или bash-скрипт) который ищет все вызовы preg_replace, которые используют указанный модификатор. Я искал в Интернете и обнаружил, что это должно быть сделано либо с помощью выражения регулярного выражения, либо с помощью токенизатора. Я пытался, но мне не удалось создать сценарий, который делает именно это (в основном потому, что я на самом деле не использовал ни одну из двух упомянутых функций, и не разбираюсь ни в одной из них).
Мне было интересно, есть ли какой-нибудь более простой способ сделать это, или кто-нибудь может помочь мне в создании сценария, который просматривает всю кодовую базу и выводит требуемые вызовы.
Заранее спасибо.
Вы можете использовать редактор кода для поиска и замены:
preg_replace*?\/e
Других решений пока нет …