
SleekDB 是一个简单的 PHP 实现的扁平文件 NoSQL 数据库,没有任何第三方依赖。它将数据存储在纯 JSON 文件中,使其轻量级且易于使用。
与 SQLite、MySQL、PostgreSQL 等关系型数据库不同,SleekDB 是一个 NoSQL 数据库;你可以把它想象成 MongoDB,但更简单且没有额外的负担。
它专为管理几 GB 的数据而设计,适用于低到中等操作负载。如果你需要一个简单的数据库解决方案,且不需要高负载的 IO 操作,SleekDB 就是为你而生的。
支持 PHP 8.4 及以上版本,仅需 ext-json 和 ext-mbstring 两个扩展即可运行。
使用 composer 安装
composer require sleekdb/sleekdb
SleekDB 应该会通过 composer 自动加载到您的应用中。一行命令搞定,零配置启动。
user.address.city)where、orWhere、LIKE、IN、BETWEEN、EXISTS 等limit / skip)、排序、去重(distinct)、分组(groupBy)和聚合操作假设你要开发一个个人博客系统,使用 SleekDB 来存储文章数据:
use SleekDB\Store;
// 创建文章存储
$articles = new Store("articles", __DIR__ . "/database");
// 插入一篇文章
$articles->insert([
"title" => "SleekDB 入门指南",
"content" => "这是一篇关于轻量级 PHP 数据库的文章...",
"author" => ["name" => "Tinywan", "email" => "example@email.com"],
"tags" => ["php", "nosql"],
"created_at" => date("Y-m-d H:i:s")
]);
// 全文搜索并按相关性排序
$results = $articles->search(["title", "content"], "PHP 数据库", ["searchScore" => "DESC"]);
// 分页查询最新文章
$latest = $articles->createQueryBuilder()
->orderBy(["created_at" => "DESC"])
->limit(10)
->skip(0)
->fetch();
整个过程无需连接数据库服务器,代码干净且易维护。
官方:https://sleekdb.github.io