PHP函数ereg_replace()已弃用

时间:2011-09-25 06:40:34

标签: php

class autoActiveLink {

    function makeActiveLink($originalString){

        $newString = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]","<a href=\"\\0\" target=\"_blank\">\\0</a>", $originalString);
        return $newString;
    }

}

我应该用ereg_replace代替什么?我尝试了preg_replace,但错误仍然存​​在。

2 个答案:

答案 0 :(得分:3)

preg_replace()

http://php.net/manual/en/function.preg-replace.php

将其替换为preg_replace后,错误仍然存​​在

但模式语法不同,你必须转换它

答案 1 :(得分:3)

尝试

class autoActiveLink {
    function makeActiveLink($originalString){
        $newString = preg_replace('#([A-Za-z]+://[^<>\s]+[A-Za-z0-9/])#','<a href="$1" target="_blank">$1</a>', $originalString);
        return $newString;
    }
}