函数ereg_replace()已被弃用 – 如何清除此错误?
我写了下面的PHP代码:
$input="menu=1&type=0&"; print $input."<hr>".ereg_replace('/&/', ':::', $input);
运行上面的代码后,会给出以下警告,
不推荐使用:函数ereg_replace()已弃用
我怎样才能解决这个警告。
切换到preg_replace
文档并更新expression式,以使用preg语法(PCRE)而不是ereg语法(POSIX) ,这是在有差异的文档 (就像它在ereg_replace
Docs手册中ereg_replace
)。
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 );
改为调用ereg_replace来代替使用preg_replace
http://php.net/ereg_replace说:;
注意:从PHP 5.3.0开始,不推荐使用正则expression式扩展来支持PCRE扩展 。
因此, preg_replace在各方面都是更好的select。 注意模式语法有一些差异。
IIRC他们build议使用preg_
函数(在这种情况下, preg_replace
)。
这里是关于用preg_replacereplaceereg_replace的更多信息