rishair/php-redis-autocomplete

使用PHP和Redis实现的自动补全

dev-master 2013-04-22 21:42 UTC

This package is not auto-updated.

Last update: 2024-09-24 05:31:24 UTC


README

使用PHP+Redis实现的自动补全。

灵感来自 https://github.com/seatgeek/soulmate

此库处理了按“分数”排序的基本自动补全实现,以及结果的自定义元数据。还具有将不同的自动补全数据库分离到“桶”中的能力(例如,有“用户”和“视频”的单独桶,因此当针对“用户”进行查询时,不会显示来自“视频”的结果)

入门指南

首先将文件复制到您的项目中,并初始化一个有效的Predis实例(https://github.com/nrk/predis)。

类加载后,初始化一个新的RedisAutocomplete实例

$auto = new RedisAutocomplete($predis, "users");

在这个例子中,我们将使用“users”作为桶(一个分类自动补全集的分类)

存储数据

要存储数据,您必须为项目提供一个唯一ID和一个应可搜索的短语。您可以可选地添加一个会影响项目显示顺序的分数。您还可以传递一个任意数据对象,该对象将被转换为JSON并与唯一ID一起存储。

$auto->Store(2, "cat");
$auto->Store(3, "care");
$auto->Store(4, "caress");
$auto->Store(5, "cars");
$auto->Store(6, "camera");

检索数据

检索数据非常简单

$auto->Find("car");

它返回

[3, 4, 5]

版权 (c) 2011 Rishi Ishairzay,在MIT许可下发布