tag算法探讨01—设计思路

用thinkphp写一个PHP前台,懒得搞多级分类,而且网站的内容决定了子分类下数据可能不会太多,搞单独子类就不太合适了,就想到了用tag来代替分类的想法。

还没写,这里我先自己理一下思路,因水平有限,也没看过其他cms的算法,纯属个人瞎写,写的不对各位看官一笑而过即可。

首先要高效吧,虽然我的mysql优化能力很差,但是要跑动态程序,总要提升下访问速度增强用户体验。

好吧不扯闲篇了,进入正题。

因为主要内容都是手动添加的,这里我就忽略分词了。网上也很多教程不赘述了。

基本思路是这样的,首先建立独立的tags表,用来储存所有的tag,并且有独立字段保存包括这个tag的文章id。

这个ids字段会在添加文章的时候,自动新建更新。这样查询的时候就不卡了,当然这个数据架构可以根据自己的需求改变。

这里我只阐述我个人的一点需求,内容不多,所以我这么放比较方便。我想最好的方法还是单独列个tag表,然后单独再建个跟tag对应的ids表。

然后查询tags的时候就可以获取到这个tag所对应的文章id 你也可以增加个 title 字段保存标题名。

 

OK基本这个思路,表达能力有限,下面列一下数据结构和说明。

 

1. 新增tags表, 字段:id(自动递增),tag(例子:526互联),ids(对应的文章id 例:1,2,3) 查询tag的时候可以分割处理

2. 内容表新增 tags 字段,字段保存所有tag,用逗号分隔。保存内容的时候,分割tags字段的值然后循环入库到 tags 表中



 

2 Comments on “tag算法探讨01—设计思路”

  1. 找这篇文章很久了,技术帖,顶。感谢博主无私分享!大家支持起来

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注