Функция ereg replace () устарела - как очистить эту ошибку?
Я написал следующий PHP код:
$input="menu=1&type=0&";
print $input."<hr>".ereg_replace('/&/', ':::', $input);
после запуска выше кода, он дает следующее предупреждение,
устарело: функция ereg_replace() устарела
Как я могу разрешить это предупреждение.
6 ответов
переключатель preg_replace
Docs и обновите выражение, чтобы использовать синтаксис preg (PCRE) вместо синтаксиса ereg (POSIX)там, где есть различияDocs (так же, как сказано в руководстве для ereg_replace
Docs).
print $input."<hr>".ereg_replace('/&/', ':::', $input);
становится
print $input."<hr>".preg_replace('/&/', ':::', $input);
пример :
$mytext = ereg_replace('[^A-Za-z0-9_]', '', $mytext );
изменено на
$mytext = preg_replace('/[^A-Za-z0-9_]/', '', $mytext );
http://php.net/ereg_replace говорит:
Примечание: начиная с PHP 5.3.0 расширение regex устарело в пользу расширение PCRE.
таким образом, человек это во всех отношениях лучший выбор. Обратите внимание, что есть некоторые различия в синтаксисе шаблона.
здесь дополнительная информация о замене ereg_replace на preg_replace