justim / access
针对大数据集优化的简单MySQL包装器
v1.21.0
2023-12-13 14:55 UTC
Requires
- php: ^8.1
- ext-pdo: *
- psr/clock: ^1.0
Requires (Dev)
- php-coveralls/php-coveralls: ^2.5.2
- phpbench/phpbench: ^1.2.3
- phpstan/phpstan: ^1.2.0
- phpstan/phpstan-phpunit: ^1.0.0
- phpunit/phpunit: ^9.5.11
- psalm/plugin-phpunit: ^0.18.4
- squizlabs/php_codesniffer: ^3.6.2
- symfony/var-dumper: ^6.0.1
- vimeo/psalm: ^5.17
- dev-master
- v1.21.0
- v1.20.0
- v1.19.3
- v1.19.2
- v1.19.1
- v1.19.0
- v1.18.1
- v1.18.0
- v1.17.2
- v1.17.1
- v1.17.0
- v1.16.1
- v1.16.0
- v1.15.3
- v1.15.2
- v1.15.1
- v1.15.0
- v1.14.1
- v1.14.0
- v1.13.1
- v1.13.0
- v1.12.2
- v1.12.1
- v1.12.0
- v1.11.0
- v1.10.1
- v1.10.0
- v1.9.4
- v1.9.3
- v1.9.2
- v1.9.1
- v1.9.0
- v1.8.1
- v1.8.0
- v1.7.2
- v1.7.1
- v1.7.0
- v1.6.1
- v1.6.0
- v1.5.0
- v1.4.2
- v1.4.1
- v1.4.0
- v1.3.2
- v1.3.1
- v1.3.0
- v1.2.1
- v1.2.0
- v1.1.1
- v1.1.0
- v1.0.0
This package is auto-updated.
Last update: 2024-08-31 12:48:02 UTC
README
针对大数据集优化的简单MySQL包装器
快速使用
class User extends Entity { // .. } $db = Database::create('some PDO connection string'); $user = $db->findOne(User::class, 1); $user->setName('Dave'); $db->update($user); $users = $db->findBy(User::class, ['name' => 'Dave']); // uses a generator foreach ($users as $user) { // $user is an instance of User }
功能
- 使用PDO预编译语句池进行快速查询
- 针对批量查询优化(例如,轻松获取集合的集合)
- 轻松以JSON格式展示实体,无需担心n+1查询
要求
- PHP 8.1 或更高版本
- PDO 扩展
安装
- 在 Packagist 上可用
composer require justim/access=dev-master
文档
目前,请查看测试用例以了解使用方法。
其他功能
- 目前仅支持MySQL和SQLite,如果能支持更多数据库管理系统(如Postgres),将非常理想
- 测试目前使用的是内存中的SQLite数据库,使用MySQL数据库会更好
最终说明
目前应用于单个生产产品,功能与该产品相关。