php文章内容中的关键词替换加链接
程序员文章站
2022-03-05 13:45:30
...
/**
*对内容中的关键词添加链接
*只处理第一次出现的关键词,对已有链接的关键不会再加链接,支持中英文
*$content:string 原字符串
*$keyword:string 关键词
*$link:string,链接
*/
public static function yang_keyword_link($content,$keyword,$link){
//排除图片中的关键词
$content = preg_replace( '|(<img[^>]*?)('.$keyword.')([^>]*?>)|U', '$1%&&&&&%$3', $content);
$regEx = '/(?!((<.*?)|(<a.*?)))('.$keyword.')(?!(([^<>]*?)>)|([^>]*?<\/a>))/si';
$url='<a href="'.$link.'" target="_blank" class="content_guanjianci">'.$keyword.'</a>';
$content = preg_replace($regEx,$url,$content,1);
//还原图片中的关键词
$content=str_replace('%&&&&&%',$keyword,$content);
return $content;
}
*对内容中的关键词添加链接
*只处理第一次出现的关键词,对已有链接的关键不会再加链接,支持中英文
*$content:string 原字符串
*$keyword:string 关键词
*$link:string,链接
*/
public static function yang_keyword_link($content,$keyword,$link){
//排除图片中的关键词
$content = preg_replace( '|(<img[^>]*?)('.$keyword.')([^>]*?>)|U', '$1%&&&&&%$3', $content);
$regEx = '/(?!((<.*?)|(<a.*?)))('.$keyword.')(?!(([^<>]*?)>)|([^>]*?<\/a>))/si';
$url='<a href="'.$link.'" target="_blank" class="content_guanjianci">'.$keyword.'</a>';
$content = preg_replace($regEx,$url,$content,1);
//还原图片中的关键词
$content=str_replace('%&&&&&%',$keyword,$content);
return $content;
}
上一篇: lintcode 动态规划问题
推荐阅读
-
PHP实现文章内容添加内链关键词替换的代码
-
浅析PHP关键词替换的类(避免重复替换,保留与还原原始链接)
-
php自动给文章加关键词链接的函数代码
-
浅析PHP关键词替换的类(避免重复替换,保留与还原原始链接)_php实例
-
浅析PHP关键词替换的类(避免重复替换,保留与还原原始链接),浅析关键词_PHP教程
-
PHP实现文章内容添加内链关键词替换的代码
-
php关键词替换的类避免重复替换,保留与还原原始链接
-
浅析PHP关键词替换的类(避免重复替换,保留与还原原始链接)_PHP
-
php关键词替换的类(避免重复替换,保留与还原原始链接),php关键词_PHP教程
-
PHP过滤和替换提交信息中的链接URL地址_PHP教程