特点
- ORM 风格,调用简单
- 丰富的内置方法
- 减少重复代码
- 更多等你去发现与改进
环境要求
- PHP >= 7.4
安装
$ composer require lany/mingdaoyun
使用
require __DIR__.'/vendor/autoload.php';
use Lany\MingDaoYun\Facade\MingDaoYun;
$appKey = "APPKEY"; //明道云APPKEY
$sign = "SIGN"; //明道云SIGN
$host = "http://xxx.xxx.com"; //私有部署域名
$mdy = MingDaoYun::init($appKey, $sign, $host);
$data = $mdy->table('worksheetId')->get();
更多方法
- init
- table
- limit
- page
- fieldMap
- with
- sort
- whereOr
- where
- whereNull
- whereNotNull
- whereDate
- whereNotDate
- get
- find
- relations
- view
- insert
- create
- delete
- update
- updateRows
- all
- count
init
设置初始化参数
$mdy = MingDaoYun::init('APPKEY', 'SIGN', '部署域名');
table
设置工作表
$mdy->table('worksheetId');
limit
要获取的数据行数
$mdy->table('worksheetId')->limit(5);
page
设置页码
$mdy->table('worksheetId')->page(5);
fieldMap
获取字段对照关系(明道云工作表结构)
$mdy->table('worksheetId')->fieldMap();
with
要获取关联记录时,设置 rowId,controlId
$mdy->table('worksheetId')->with('rowId', 'controlId');
relations
获取关联记录
$mdy->table('worksheetId')->with('rowId', 'controlId')->relations();
sort
设置排序字段,默认为升序
$mdy->table('worksheetId')->sort('field', $bool);
whereOr
设置筛选条件,以 or 的方式拼接下一个条件,使用 whereOr 时必须写在 where()之前
$mdy->table('worksheetId')->whereOr('field', '=', '123');
where
设置筛选条件,以 and 的方式拼接下一个条件,目前支持的运算符有
contains
,notContain
,startWith
,endWith
,=
,!=
,>
,>=
,<
,<=
$mdy->table('worksheetId')->where('field', '!=', '123');
whereNull
字段为空
$mdy->table('worksheetId')->whereNull('field');
whereNotNull
字段为不为空
$mdy->table('worksheetId')->whereNotNull('field');
whereDate
日期是
$mdy->table('worksheetId')->whereDate('field', '2022-02-22');
whereNotDate
日期不是
$mdy->table('worksheetId')->whereNotDate('field', '2022-02-22');
get
获取工作表内容
1.1.0
修改为默认最多获取 1000 条数据,如需获取更多数据请使用limit
设置,获取所有数据请使用all
$mdy->table('worksheetId')->limit(1)->page(1)->get();
find
获取单条记录(行记录详情)
$mdy->table('worksheetId')->find('rowId');
view
设置视图 ID
$mdy->table('worksheetId')->view('view')->get();
insert
新增单条记录,按明道云新增 controls 参数格式传入 data 即可
$data = [
['controlId' => 'controlId', 'value' => 'value'],
['controlId' => 'controlId', 'value' => 'value'],
];
$mdy->table('worksheetId')->insert($data);
create
批量新增记录,按明道云批量新增 rows 参数格式传入 data 即可
$data = [
[
['controlId' => 'controlId', 'value' => 'value'],
['controlId' => 'controlId', 'value' => 'value'],
],
];
$mdy->table('worksheetId')->create($data);
delete
删除行记录,多条记录以
,
分隔 rowId
$mdy->table('worksheetId')->delete('rowId');
update
更新单行记录
$update = [
['controlId' => '60efbf797b786d8a492bfce2', 'value' => '波波波力'],
['controlId' => '60efbf797b786d8a492bfce5', 'value' => '波波波力力力力力'],
];
$mdy->table('worksheetId')->update('rowId', $update);
updateRows
批量更新行记录,(目前明道只支持每次更新一个字段)
$rowIds = [
'rowId1', 'rowId2'
];
$update = [
'controlId' => 'controlId', 'value' => 'value'
];
$mdy->table('worksheetId')->updateRows($rowIds, $update);
all
获取所有数据
此方法为1.1.0新增
$mdy->table('worksheetId')->all();
count
统计数据行数
此方法为1.1.0新增
$mdy->table('worksheetId')->count();
欢迎提交 PR 和 issue