帝国CMS给内容字段图片加链接函数,第一个参数是内容,第2个参数是替换域名。functiondomainReplace($text,$url){ $pattern=//; $text=stripSlashes($text); returnpreg_replace_callback($pattern,function($matches)use($url){ if('/'!==substr($matches[1],0,1)&&'http...
帝国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);
}