PHPackages                             tinywan/meilisearch - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Search &amp; Filtering](/categories/search)
4. /
5. tinywan/meilisearch

ActiveLibrary[Search &amp; Filtering](/categories/search)

tinywan/meilisearch
===================

a simple PHP library for the Meilisearch API

v0.0.1(4y ago)1132MITPHPPHP &gt;=7.4CI failing

Since Apr 14Pushed 4y ago1 watchersCompare

[ Source](https://github.com/Tinywan/meilisearch)[ Packagist](https://packagist.org/packages/tinywan/meilisearch)[ RSS](/packages/tinywan-meilisearch/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (6)Versions (2)Used By (0)

 [![Meilisearch](./logo.svg)](./logo.svg)

Meilisearch
===========

[](#meilisearch)

[![Latest Stable Version](https://camo.githubusercontent.com/41550c2e9f26fa37eee7b91f9814f5f28446df85df183ab94e43bbab4946ac7c/687474703a2f2f706f7365722e707567782e6f72672f74696e7977616e2f6d65696c697365617263682f76)](https://packagist.org/packages/tinywan/meilisearch)[![Total Downloads](https://camo.githubusercontent.com/5a8680d8bfd5867c516325ea62d1fede03cb117241044f2363e848c6784397fb/687474703a2f2f706f7365722e707567782e6f72672f74696e7977616e2f6d65696c697365617263682f646f776e6c6f616473)](https://packagist.org/packages/tinywan/meilisearch)[![Latest Unstable Version](https://camo.githubusercontent.com/839f60d9aa0a484c8a4667cf3f7de2d71cafada4565424757360d68432f14a70/687474703a2f2f706f7365722e707567782e6f72672f74696e7977616e2f6d65696c697365617263682f762f756e737461626c65)](https://packagist.org/packages/tinywan/meilisearch)[![License](https://camo.githubusercontent.com/9301483898ff5c0816f922b5f0d4db2af7e5169a3e7875bd33aa323f70ef0526/687474703a2f2f706f7365722e707567782e6f72672f74696e7977616e2f6d65696c697365617263682f6c6963656e7365)](https://packagist.org/packages/tinywan/meilisearch)[![PHP Version Require](https://camo.githubusercontent.com/febc1e8cd623d613cf7f8a8414d05fc2dd1f997cc329baebfb6dc60daca94ca4/687474703a2f2f706f7365722e707567782e6f72672f74696e7977616e2f6d65696c697365617263682f726571756972652f706870)](https://packagist.org/packages/tinywan/meilisearch)

MeiliSearch是一个功能强大，快速，开源，易于使用和部署的搜索引擎。搜索和索引都是高度可定制的。允许输入、过滤器和同义词等特性都是开箱即用的。是近两年开源的项目，同样也支持中文分词，在小数据规模下可以实现比[ElasticSearch](https://www.elastic.co/cn/elasticsearch/)更加快速和易用的搜索体验。更多安装、配置、使用等细节请参考[官方文档](https://docs.meilisearch.com/)或交友网站

安装
--

[](#安装)

```
composer require tinywan/meilisearch
```

使用
--

[](#使用)

### 初始化配置

[](#初始化配置)

```
$config = [
    'url' => 'http://127.0.0.1:7700',
    'key' => '',
    'guzzle' => [
        'headers' => [
            'charset' => 'UTF-8',
        ],
        'timeout' => 20
    ],
];

// 调用 config 方法初始化
Tinywan\Meilisearch::config($config);
```

### 基本使用

[](#基本使用)

#### 1. 创建索引

[](#1-创建索引)

```
Tinywan\Meilisearch::search()->index('meilisearch');
```

#### 2. 添加文档

[](#2-添加文档)

```
$documents = [
    ['id' => 1, 'title' => '酒吧墙面装饰美式复古咖啡厅'],
    ['id' => 2, 'title' => '工艺品桌面摆件'],
    ['id' => 3, 'title' => '现代简约三联餐厅壁画玄关挂画'],
    ['id' => 4, 'title' => '现代简约时尚单头餐吊灯创意个性吧台']
];
Tinywan\Meilisearch::search()->index('meilisearch')->addDocuments($documents);
```

#### 3. 默认查询

[](#3-默认查询)

```
Tinywan\Meilisearch::search()->index('meilisearch')->search('桌面摆件')->getRaw();
```

- `getRaw()` 返回数组

返回字段
----

[](#返回字段)

- `hits` 命中的结果
- `offset` 页大小
- `limit` 每页条数
- `processingTimeMs` 处理耗时
- `query` 查询的内容

前端集成
----

[](#前端集成)

[![demo.png](./demo.png)](./demo.png);

数据查询
----

[](#数据查询)

分页查询

```
http://172.30.32.1:7700/indexes/mall_goods/search?limit=1&offset=3
http://172.30.32.1:7700/indexes/mall_goods_27_30/search?q=10

```

- `offset` 页大小
- `limit` 每页条数

关键字查询

```
http://172.30.32.1:7700/indexes/mall_goods_27_30/search?q=桌面摆件

```

数据添加
----

[](#数据添加)

### 已经存在的数据

[](#已经存在的数据)

1. 直接批量添加即可

```
$documents = Db::table('mall_goods')
    ->field('id,name,default_image')
    ->whereIn('goods_id',[30])
    ->limit(2)
    ->select()
    ->toArray();
Tinywan\Meilisearch::search()->index('meilisearch')->addDocuments($documents);
```

2. 新添加的商品，单独添加

```
$documents = [
    ['id' => 1, 'title' => '酒吧墙面装饰美式复古咖啡厅'],
];
Tinywan\Meilisearch::search()->index('meilisearch')->addDocuments($documents);
```

### Test

[](#test)

```
vendor/bin/phpstan analyse -l 5 src

vendor/bin/php-cs-fixer fix src

```

Other
-----

[](#other)

### Config

[](#config)

- ① 配置初始化 `Tinywan\Meilisearch::config([])`
- ② 调用构造函数 `new self($config, $container)`
- ③ 构造函数注册服务 `$this->registerServices($config, $container);`
- ④ 注册服务：核心服务和自定义服务
- ⑤ 核心服务 `ContainerServiceProvider` 注册函数`register($data)` 调用
- ⑥ 注册函数`register($data)` 调用PSR11实现的DI依赖注入扩展 `DI\ContainerBuilder`
- ⑦ 通过依赖注入扩展 `DI\ContainerBuilder` 为容器服务`ContainerServiceProvider`指定容器 `MeiliSearch::setContainer($container);`
- ⑧ 通过依赖注入扩展 `DI\ContainerBuilder` 为当前服务设置容器 `MeiliSearch::setContainer($container);`
- ⑨ 获取当前设置的容器 `var_dump(MeiliSearch::getContainer()); 获取对象：class DI\Container#101 (8) {}`

### 文件加载

[](#文件加载)

TP6 Container 调用反射执行类的实例化。并不是按照标准的PSR11的容器接口实现的

###  Health Score

21

—

LowBetter than 19% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1494d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b0042e0b68ff6a731ef382a03eecd211736c2d619acc55b2b326988085f72bfb?d=identicon)[Tinywan](/maintainers/Tinywan)

---

Top Contributors

[![Tinywan](https://avatars.githubusercontent.com/u/14959876?v=4)](https://github.com/Tinywan "Tinywan (21 commits)")

---

Tags

pluginmeilisearchwrapperwebman

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/tinywan-meilisearch/health.svg)

```
[![Health](https://phpackages.com/badges/tinywan-meilisearch/health.svg)](https://phpackages.com/packages/tinywan-meilisearch)
```

###  Alternatives

[10up/elasticpress

Supercharge WordPress with Elasticsearch.

1.3k374.3k6](/packages/10up-elasticpress)[statamic-rad-pack/meilisearch

meilisearch search driver for Statamic

1661.7k](/packages/statamic-rad-pack-meilisearch)[dwarfdk/laravel-meilitools

Additional tools for Laravel Scout integration with MeiliSearch

10022.4k](/packages/dwarfdk-laravel-meilitools)[omure/scout-advanced-meilisearch

Laravel Scout extension that allows to use meilisearch advanced features as well as has an extended collection driver for testing purposes.

123.9k](/packages/omure-scout-advanced-meilisearch)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
