帝国CMS内容字段域名替换函数
帝国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);
}