帝国CMS给内容字段图片加链接函数,第一个参数是内容,第2个参数是替换域名。

function domainReplace($text, $url){
        $pattern = "/<[img|IMG].*?src=[\'|\"](.*?(?:[\.jpg|\.jpeg|\.png|\.gif|\.bmp]))[\'|\"].*?[\/]?>/";
       
        $text = stripSlashes($text);
       
        return preg_replace_callback($pattern, function($matches) use($url) {
       
                if ('/' !== substr($matches[1], 0, 1) && 'http' !== substr($matches[1], 0, 4)) {
                       
                        return str_replace($matches[1], $url . $matches[1], $matches[0]);
                }
               
                return $matches[0];
        },
        $text);
}

升级版

function domainReplace($content = '', $url = '', $s = 0) {
       
        $pattern = "/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\"|\'].*?[\/]?>/";
        return preg_replace_callback($pattern, function($matches) use ($url) {
               
                if (1 === $s && false !== stristr($matches[0], $url)) {
                       
                        return str_replace($url, '', $matches[0]);
                } elseif (0 === $s && '/' !== substr($matches[1], 0, 1) && 'http' !== substr($matches[1], 0, 4)) {
                        return str_replace($matches[1], $url . $matches[1], $matches[0]);
                } else {
                       
                        return $matches[0];
                }
               
        }, $content);
}


点击这里复制本文地址

以上内容由qqso网站教程网整理呈现.
原文地址:帝国CMS内容字段域名替换函数发布于2021-11-16 18:00:04。
请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!