Download the PHP package asfop/eloquent without Composer
On this page you can find all versions of the php package asfop/eloquent. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Please rate this library. Is it a good library?
Informations about the package eloquent
介绍
eloquent 提供了模型关联关系中的一对一和一对多查询。这两种情况下,查询出的数据可以进行缓存以提高性能 在一对一关联情况下的数据缓存的一种尝试
初衷
在多表连接查询的时候,我的一般做法,我会先查主表,然后再array_column条件id去匹配副表信息.
例如, users 和 phones 两张表,它们通过 user_id 进行关联
表结构
- users 表:
| 字段名 | 类型 | 描述 |
|---|---|---|
| id | Integer | 主键 |
| name | String | 用户名 |
| String | 邮箱地址 |
- phones 表:
| 字段名 | 类型 | 描述 |
|---|---|---|
| id | Integer | 主键 |
| user_id | Integer | 外键,关联到 users 表的 id |
| phone_number | String | 电话号码 |
实现方式
为了简化上述操作,进行了封装,并且对查询出来的结果使用redis将数据缓存
使用案例
-
获取用户id为10000的信息
- 获取用户10000和10001的信息
如何实现上述查询
在Hyperf中使用
创建Eloquent 文件夹 目录结构如下
User模型 一对一关联UserDrive.php属性名对应的数据查询类UserEloquent.php自定义快捷查询的类。可定义查询单个用户名,和多个用户函数名Attribute/Info.php基础信息实现类Attribute/Phone.phpPhone信息实现类
UserEloquent.php 解释
Info.php 解释
开发计划
- [x] 基本功能够使用
- [x] 提供基础文档
- [x] 查询功能加上数据缓存,缓存加上版本控制,缓存支持清空
- [ ] 支持是否使用缓存开关
- [ ] 支持那些属性查询不走缓存
- [ ] 支持更多的缓存方式如文件,Memcache缓存方式,
- [ ] 支持并发重复请求
- [ ] 支持多级缓存,内存缓存->redis缓存
- [ ] 命名优化,功能优化
- [ ] 完善测试用例
All versions of eloquent with dependencies
PHP Build Version
Package Version
Requires
ext-json Version
*
php Version >=7.1|>=8.0|>=8.1
php Version >=7.1|>=8.0|>=8.1
The package asfop/eloquent contains the following files
Loading the files please wait ...