搜索引擎优化高级编程:php版(搭建PHP版的Elasticsearch开发环境?以及我们怎么样搭建关于Elasticsearch服务端)
优采云 发布时间: 2021-12-27 12:03搜索引擎优化高级编程:php版(搭建PHP版的Elasticsearch开发环境?以及我们怎么样搭建关于Elasticsearch服务端)
Elasticsearch 是一个非常流行的全文搜索引擎,PHP 是中小型网站的首选编程语言。搜索是网站或应用程序的常见功能。那么PHP是如何配合Elasticsearch来完成搜索功能的呢?以及我们如何搭建 PHP 版本的 Elasticsearch 开发环境?小编为你一一解读。
环境介绍
操作系统:Windows 7 Ultimate 64 位
PHP:PHP 7.1.2
MySQL:MySQL 5.5.27
网络服务器:Apache 2.4.3
PHP框架:LV框架
java环境安装
由于Elasticsearch是基于Java环境的,所以我们需要先安装Java环境。您可以按照以下步骤安装Java环境。
访问Java官方网站。
下载 Java 文件并安装它。因为是Windows环境,我们只需要点击下一步即可完成Java安装。
将Java安装路径添加到系统环境变量中,然后执行java -version。如果输出类似下图,说明你的Java环境搭建成功。
设置 Elasticsearch 环境
首先进入Elasticsearch官网,参考上图,我们选择下载ZIP文件搭建环境,下载文件后,在E盘新建一个目录存放ZIP文件的解压文件,参考到下图。
打开windows系统的命令窗口,然后将目录切换到上面Elasticsearch解压目录的bin目录下,执行elasticsearch.bat文件,就可以启动我们的Elasticsearch服务程序,然后打开浏览器,访问:9200,看看如果真的开始了。
搭建PHP开发环境
以上已经完成了Elasticsearch服务端环境的搭建,下面我们来完成搭建PHP客户端环境的任务。
用IDE(PhpStorm)打开LV框架,然后找到composer.json文件,在require中添加如下内容,然后执行php composer.phar update就完成了PHP开发环境的设置。
一些基本概念
下面的概念都是为Elasticsearch讲解的
index:类似于RDBMS中的数据库,可以有多个数据库。
type:类似于RDBMS中的数据表,用于存储如下文档。
文档:类似于 RDBMS 中的每个数据记录。
id:类似于RDBMS数据表中的主键,只不过这里只有一个字段。
查询字段和显示字段:对于显示字段,不推荐搜索,仅用于显示数据。相反,对于查询字段,它可以用于搜索和显示。
数据库索引与全文搜索倒排索引,数据库索引一般以文档ID为索引,以文档内容为记录,而倒排索引则相反。它使用记录中的 关键词 作为索引,使用文档 ID 作为记录。
完成我的第一个简单的 DEMO
上面我已经搭建好了LV版的PHP开发环境,下面来实现文档存储和查询的DEMO。
其他全文搜索引擎介绍
其实除了Elasticsearch,对于我们PHP程序员来说,还有其他几个常用的全文搜索引擎,分别是Sphinx、Solr、寻搜等。但是,对于中文分词,除了寻搜,还有其他几个全文搜索引擎——文本搜索引擎 所有搜索引擎都需要特殊处理。