提问人:Epiphanisation 提问时间:2/11/2011 最后编辑:CommunityEpiphanisation 更新时间:10/29/2012 访问量:1325
替换ereg_replace [复制]
replacement for ereg_replace [duplicate]
问:
我已经升级了 php,现在我收到了已弃用的错误。ereg_replace
我在网上进行了一些搜索,发现我可以改用 preg,但不确定如何正确更改此代码
$scriptName = ereg_replace(
"^".$_SERVER["DOCUMENT_ROOT"], "",
$_SERVER["SCRIPT_FILENAME"]
);
答:
6赞
sdleihssirhc
2/11/2011
#1
将 替换为 .e
p
在第一个参数的开头和结尾添加分隔符。传统上,人们使用斜杠 (),但我喜欢使用,因为在正则表达式中实际使用该字符的机会较小。/
~
评论
0赞
Linus Kleen
2/11/2011
不。那行不通。 需要分隔符,而不需要。你应该稍微改写一下这个答案。preg_replace
ereg_replace
3赞
Tim Pietzcker
2/11/2011
prpgrpplacp
我的机器上出现错误。:)
0赞
sdleihssirhc
2/11/2011
@Tim 这意味着你的PHP配置错误。在文本编辑器中打开 php.ini 并找到以下行: 将其设置为等于 .如果您在共享主机上,则可以通过调用 来即时执行此操作。la_disparition=
p
gadsby('p')
1赞
Highly Irregular
2/11/2011
#2
当 $_SERVER[“DOCUMENT_ROOT”] 的值中包含特殊字符时,仅添加分隔符将不起作用。您需要按如下方式转义它们:
$scriptName = preg_replace(
"/^".preg_quote($_SERVER["DOCUMENT_ROOT"],"/")."/",
"",
$_SERVER["SCRIPT_FILENAME"]
);
评论
0赞
Epiphanisation
2/15/2011
不规则@Highly欢呼
评论