Eregi в preg_replace изменено для совместимости с php 5.3 - PullRequest
0 голосов
/ 21 августа 2010

У меня есть эта строка в одном из моих скриптов, и она выдает устаревшую ошибку.

 eregi_replace( '\.([a-z]{3,4})$', "-{$width}x{$height}.\\1", $src );

Может кто-нибудь показать мне, как превратить это в preg_replace, и сказать, почему и какие его части нужно изменить, чтобы я мог учиться для будущих изменений? Я сам попробовал, но где этот кусочек кода означает, что его действительно сложно проверить !!

Это так же просто, как просто заменить eregi_replace на preg_replace?

Я ненавижу регулярные выражения:)

1 Ответ

3 голосов
/ 21 августа 2010

Вам нужны разделители , такие как / и i модификатор :

/\.([a-z]{3,4})$/i

Итак:

preg_replace('/\.([a-z]{3,4})$/i', "-{$width}x{$height}.\\1", $src);

См. На этой странице справки различия между POSIX ERE и PCRE .

...