\Framework\RepositoryRepositoryInterface

Interface RepositoryInterface 定义通用的数据仓库操作标准

Summary

Methods
Constants
findById()
findOneBy()
findAll()
paginate()
create()
update()
delete()
aggregate()
transaction()
query()
execute()
No constants found
No protected methods found
N/A
No private methods found
N/A

Methods

findById()

findById(int|string  $id, array  $relations = []) : mixed

根据主键查找

Parameters

int|string $id
array $relations

预加载关联模型,如 ['profile', 'orders']

Returns

mixed —

findOneBy()

findOneBy(array  $criteria, array  $relations = []) : mixed

根据条件查找单条

Parameters

array $criteria
array $relations

Returns

mixed —

findAll()

findAll(array  $criteria = [], array  $orderBy = [], int|null  $limit = null, array  $relations = []) : mixed

根据条件查找多条记录

Parameters

array $criteria

查询条件 ['status' => 1]

array $orderBy

排序 ['id' => 'desc']

int|null $limit

限制条数

array $relations

Returns

mixed —

paginate()

paginate(array  $criteria = [], int  $perPage = 15, array  $orderBy = [], array  $relations = []) : mixed

分页查询

Parameters

array $criteria
int $perPage
array $orderBy
array $relations

Returns

mixed —

create()

create(array  $data) : mixed

创建数据

Parameters

array $data

Returns

mixed —

update()

update(int|string  $id, array  $data) : bool

更新数据

Parameters

int|string $id

主键

array $data

更新内容

Returns

bool —

delete()

delete(int|string  $id) : bool

删除数据

Parameters

int|string $id

Returns

bool —

aggregate()

aggregate(string  $type, array  $criteria = [], string  $field = '*') : string|int|float

聚合统计 (count, sum, max)

Parameters

string $type

统计类型

array $criteria
string $field

字段名

Returns

string|int|float —

transaction()

transaction(\Closure  $callback) : mixed

数据库事务闭包

Parameters

\Closure $callback

Returns

mixed —

query()

query(string  $sql, array  $bindings = []) : array

执行原生 SQL 查询 (SELECT)

Parameters

string $sql
array $bindings

Returns

array —

返回数组结果集

execute()

execute(string  $sql, array  $bindings = []) : int

执行原生 SQL 指令 (INSERT, UPDATE, DELETE)

Parameters

string $sql
array $bindings

Returns

int —

返回受影响的行数