给内链自动添加超链接可以节省我们手动添加的麻烦,并且后期对内链关键词的维护更容易,PHP程序怎么实现内链关键词自动添加超链接呢?下面看青岛星网跟大家分享。
//读出关键词
$sql = "select keywords,url from `qdxw`";
$sqlquery = mysql_query($sql,$conn);
//循环成数组
while($row = mysql_fetch_row($sqlquery))
{
$key_array[] = $row;
}
function keyword_replace($str, $key_array){
$array_first = $key_array;
$array_last = array();
foreach($array_first as $key=>$value){
$array_last[$key] = array('TFXS00' . $key, $value[0], '<a target="_blank" href="' . $value[1] . '" title="' . $value[0] . '">' . $value[0] . '</a>');
}
$count = count($array_last);
for($i=0;$i<$count;$i++){
for($j=$count-1;$j>$i;$j--){
//如果后一个元素长度大于前一个则调换位置
if(strlen($array_last[$j][1]) > strlen($array_last[$j-1][1])){
$tmp = $array_last[$j];
$array_last[$j] = $array_last[$j-1];
$array_last[$j-1] = $tmp;
}
}
}
$keys = $array_last;
foreach($keys as $nkeys){
$str = str_ireplace($nkeys[1], $nkeys[0], $str);
}
foreach($keys as $nkeys){
$str = str_ireplace($nkeys[0], $nkeys[2], $str);
}
return $str;
}
$str = "<p>青岛星网是一家领先的网络技术服务商,为您提供SEO培训,网站设计培训,网站建设,网站策划推广等服务及一站式网站解决方案。青岛星网一直致力为企业与个人提供动力</p>";
//关键词设置
// $key_array = array(
// array('SEO', 'http://www.qdxw.net/seo/' ),
// array('青岛星网', 'http://www.qdxw.net')
// );
//在输出文章内容的地方调用这个函数 $str为文章内容
echo keyword_replace(stripslashes($str), $key_array);

