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

mysql - 求大神指点PHP做搜索的功能,中文分词等一些知识,感激不尽!

程序员文章站 2022-03-25 14:40:07
...
说说我现在的困惑:

做网站文章搜索功能:用的还是 like title %$keyword% 这样的形式

比如一篇文章名称叫做:水立方面积

如果搜索 “” 或者 立方都搜得到这篇文章,但是搜索 “水方”就搜不到了,我想让它智能一点,有没有什么办法呢?

结果网上一找,找了一些资料:全文索引Sphinx 中文分词SCWS 这些玩儿,看了半天搞不懂:

  1. 这些是要装在服务器上配置才能使用的吗?

  2. PHP脚本能做这些事情吗?

  3. 我就会PHP啊!用的还是万网的虚拟主机啊,怎么在服务器上装软件呢?实在不行我换阿里云。

希望有经验的大神指点下啊,给我讲解一下,或者找点资料我看下,我以前就觉得有点不对劲,淘宝那么强大,搜索用like %%没什么卵用吧?

回复内容:

说说我现在的困惑:

做网站文章搜索功能:用的还是 like title %$keyword% 这样的形式

比如一篇文章名称叫做:水立方面积

如果搜索 “” 或者 立方都搜得到这篇文章,但是搜索 “水方”就搜不到了,我想让它智能一点,有没有什么办法呢?

结果网上一找,找了一些资料:全文索引Sphinx 中文分词SCWS 这些玩儿,看了半天搞不懂:

  1. 这些是要装在服务器上配置才能使用的吗?

  2. PHP脚本能做这些事情吗?

  3. 我就会PHP啊!用的还是万网的虚拟主机啊,怎么在服务器上装软件呢?实在不行我换阿里云。

希望有经验的大神指点下啊,给我讲解一下,或者找点资料我看下,我以前就觉得有点不对劲,淘宝那么强大,搜索用like %%没什么卵用吧?

用过php的几个全文检索,基本上就coreseek和xunsearch好用了。如果你是新手,而且项目的预期量不大,就用xunsearch吧,半小时上手,文档齐全,分词结果也能接受,大不了自己优化词库。

如果有点追求,就用coreseek吧,就是中文分词版的sphinx,用4以上版本,不然php的api的中文处理出问题。这个也简单,百度下官网看文档就好

http://www.9958.pw/post/coreseek_sphinx 试试这个

推荐使用:sphinx
文档:http://www.coreseek.cn/docs/coreseek_4.1-sphinx_2.0.1-beta.html/
配置可参考:
http://unun.in/php/100.html
https://www.zybuluo.com/lxjwlt/note/141406

或者使用:solr
http://blog.sina.com.cn/s/blog_8335a0d20102wfqf.html

效果很棒,搭建也不麻烦,大概半天就能学会了。

建议使用solrPHP只读取数据

你只能换云主机了,这个功能需要第三方支持,仅php搞不定