欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP关联链接常用代码

程序员文章站 2022-09-03 09:37:03
方法一:手动编辑添加 方法二:使用程序在输出内容时实现,又不影响后台内容的编辑。 下面是php自动给文章内容添加关联链接方法和示例: keylinks函数方法: 参数一:要...
方法一:手动编辑添加
方法二:使用程序在输出内容时实现,又不影响后台内容的编辑。

下面是php自动给文章内容添加关联链接方法和示例:

keylinks函数方法:
参数一:要处理的内容
参数二:替换次数
返回结果:处理后的内容

复制代码 代码如下:

header("content-type:text/html;charset=utf-8"); //设置编码
$linkdatas=array(
array('前端开发', 'http:////www.jb51.net'),
array('前端设计', '//www.jb51.net'),
array('web前端', '//www.jb51.net'),
array('前端博客', '//www.jb51.net'),
);
echo "替换前<br/>";
echo $str='web前端开发 - 专注于网站前端设计与web用户体验。前端开发,专注web前端开发,关注web用户体验,关注国内外最新最好的前端设计资源和前端开发技术的专业前端博客';
echo "<br/>替换后<br/>";
echo $str=keylinks($str,2);
/**
* 关联关键词替换
* @param txt $string 原字符串
* @param replacenum $int 替换次数
* @return string 返回字符串
*/
function keylinks($txt, $replacenum = '') {
global $linkdatas;
if ($linkdatas) {
$word = $replacement = array();
foreach ($linkdatas as $v) {
$word1[] = '/(?!(<a.*?))' . preg_quote($v[0], '/') . '(?!.*<\/a>)/s';
$word2[] = $v[0];
$replacement[] = '<a href="' . $v[1] . '" target="_blank" class="keylink">' . $v[0] . '</a>';
}
if ($replacenum != '') {
$txt = preg_replace($word1, $replacement, $txt, $replacenum);
} else {
$txt = str_replace($word2, $replacement, $txt);
}
}
return $txt;
}