将数据库中 文章的关键词字符串 替换为带 内链的字符串

来源:互联网 发布:剑灵捏脸数据免费下载 编辑:程序博客网 时间:2024/06/05 02:12

前一段时间 做过一个文章内容里关键词嵌套超链接的功能 ,但是由于 刚用到替换字符串的函数,所有没有 敢进一步的完善这个功能,最后只做了 添加文章、修改文章才会 自动添加 内链的功能....

 

从上面的描述可以看出我是编程新手... 做这个功能用到的字符串函数不是很多 下面是一段测试代码,绝对可以在本机上测试, 放到 你的一个 .php文件里面测试一下吧...

 

 

    

 

 

上面的 道理就是 关键词列表保存在一个数组里面,然后遍历这些关键词 在$content 内容中找匹配的字符串, 根据 substr_replace方法 可以找出关键词 然后替换一下..

 

 

 

 

 

 

 

下面是 一些函数的用法..测试效果也在旁边 ->找到关键词的位置,在这个位置替换 关键词个长度为 关键词

 

//找到$txt 在$content 中的位置

strpos($content,$txt);     

echo strpos('0瓜头酱油123456789','瓜头酱油');        //输出的是1

 

 

//获得$txt 的字符串长度

strlen($txt);                   

echo strlen('123456789');   //输出9

echo strlen('瓜头酱油');      //输出12

 

 

 

//在 $content 中,以 $replaceLink 替换,在$start 位置,干掉$length个字符

substr_replace($content,$replaceLink,$start,$length);

echo substr_replace('12abc456','3',2,3);   //输出 123456


 

 

 

 

  

 

可能刚开始看 脑袋晕, 但是变成还是要折腾滴...

 

 

 

 

 

 

这次把 关键词保存在了 txt文件中,嘎嘎 最后根据上面的原理还是做了出来 替换的效果,但是 在一个数据库 update的语句中还是 纠结了 一下午, 今早上 找到了原因,以后把 超链接的 href="地址" 以后用 双引号, 用单引号的话可能和 sql语句冲突 如下:

 

 

 

update 凹凸曼 set content = '凹凸曼飘过东京,造成地震,引起海啸,发生 <a href='地址'>核泄漏爆炸 </a>' where id=1;  

 

 

 

 

上面的sql语句错误就是 两个单引号中间 还出现了单引号, 建议就是把 href= 后面的 符号改为 双引号..

 

 

好的,再次飘过  飘过~~~~~~~~~~~~~

原创粉丝点击