我刚刚在客户的网站上遇到错误,说ereg
已被弃用,我已经做了一些谷歌搜索,发现你应该使用preg_match
作为替代品。
唯一的问题是,我对preg_match
函数了解不多,而且我也试图理解这个ereg
函数作为以前的雇主,不再在这里对此网站进行编码。
无论如何,这是函数,我需要知道如何更换它:
if ( ! ereg( '/$', $sCurrentFolder ) ) $sCurrentFolder .= '/' ;
答案 0 :(得分:3)
那件事基本上是说"如果最后一个字符是斜线",那么你可以使用
preg_match("(/$)",$sCurrentFolder)
或更加聪明:
if( substr($sCurrentFolder,-1) == "/") $sCurrentFolder .= "/";
甚至:
$sCurrentFolder = rtrim($sCurrentFolder,"/")."/";
// This one will remove multiple slashes from the end of $sCurrentFolder
// useful in case of possibly malformed input
答案 1 :(得分:2)
您的原始ereg
似乎只是检查字符串$sCurrentFolder
末尾的正斜杠:
if ( ! ereg( '/$', $sCurrentFolder ) ) $sCurrentFolder .= '/' ;
我相信使用preg_match
的正则表达式应该有效:
if ( ! preg_match( '/\/$/', $sCurrentFolder ) ) $sCurrentFolder .= '/' ;
编辑:原始海报表明这与旧版FCKEditor
&我挖出this fairly detailed answer来查明所有ereg
和eregi
问题&建议替换。一定要看看整个线程。如果您正在调试FCKEditor
的旧安装,那么这是一个非常好的列表和解决方案的讨论。虽然我会说实话,但我对所提出的一些建议并不是100%肯定。