PHP给文章增加关键词链接

/*此代码需要接受传递过来的参数,比如$num0=$guan;//每个关键字替换次数$num1=$cishu;//替换总次数*/

$result=mysqli_query($db,"select * from 数据表") or die($mistake);

$arry_1=mysqli_fetch_all($result);//获取全体结果集,索引数组

$count=count($arry_1);//获取总行数

//构造关键词+链接一维索引数组

function _Desc($a, $b) {  //自定义排序函数

    return (strlen($a[0]) < strlen($b[0])) ? 1 : -1; 

    } 

$keysql= array();//构造关键词库

for($btn=0;$btn<$count;$btn++)//获取关键词所在字段的所有行

{

$t33333=$arry_1[$btn][1].",".$arry_1[$btn][2];

$keysql[$btn]="$t33333";//构造关键词库,索引数组

}

$makelink = array();//关键词/链接分解,定义形成数组,分隔成2维索引数组

foreach($keysql as $exde)

{

$makelink[] = explode(',',$exde);//$exde为要分割的数组,$makelink加了中括号,是隐形索引数组,没有下标

}

usort($makelink, '_Desc');//进行关键词降序

//原文如下

$str = $text1;

//$makelink数组二维索引数组

foreach($makelink as $i=>$row) //遍历形成数组,

{

    list($key1, $url) = $row;//row数组就是2维仅包含row[0]key,row[1]links

$num0=$guan;//每个关键字替换次数

  $num1=$cishu;//替换总次数


    $str = preg_replace('/('.$row[0].')/su', ''.$key1.'', $str, $num0,$num1);  // 所有的匹配项都会被替换,把文字替换成链接 

    }

//输出结果

echo $str;   

?>

你可能感兴趣的:(PHP给文章增加关键词链接)