## 基本方法
DbModel在基本方法的基础上封装了一些便捷方法,以加速开发,方便使用。
* * * * *
#### getRowById 根据主键id获取一条数据
~~~
DbModel::getRowById($id, $fields = '*')
~~~
根据主键id获取一条数据。
参数表
| 参数名称 | 必选 | 类型 | 说明 |
| --- | --- | --- | --- |
| id | 是 | int | 主键id |
| fields | 是 | string, array | 字段名列表 |
fields可以是逗号(,)分隔的字符串,也可以是数组。形如:'id, name, email, age' 或 ['id', 'name', 'email', 'age'] 均可,默认是全部。
用例:
~~~
/**
* 测试根据id获取一行数据
*
* @return array
*/
public function testGetRowById()
{
return $this->getRowById(1);
}
~~~
* * * * *
#### getFieldById 根据主键id获取某个字段值
~~~
DbModel::getFieldById($id, $field)
~~~
根据主键id获取某个字段值。
参数表
| 参数名称 | 必选 | 类型 | 说明 |
| --- | --- | --- | --- |
| id | 是 | int | 主键id |
| fields | 是 | string | 字段名 |
用例:
~~~
/**
* 测试根据id获取一个字段的值
*
* @return mixed|string
*/
public function testGetFieldById()
{
return $this->getFieldById(1, 'name');
}
~~~
* * * * *
#### getCount 获取满足查询条件的记录数量
~~~
DbModel::getCount()
~~~
获取满足查询条件的记录数量。
参数表
无
用例:
~~~
/**
* 测试满足查询条件的数据行数
*
* @return int
*/
public function testGetCount()
{
$count = $this->where('name', '杨文杰')
->andWhere('id', '<=', 15)
->getCount();
return $count;
}
~~~
* * * * *
#### getRowsByIds 根据主键id列表取得多条记录
~~~
DbModel::getRowsByIds($ids, $fields = '*')
~~~
根据主键id列表取得多条记录。
参数表
| 参数名称 | 必选 | 类型 | 说明 |
| --- | --- | --- | --- |
| id | 是 | int | 主键id |
| fields | 是 | string, array | 字段名列表 |
fields可以是逗号(,)分隔的字符串,也可以是数组。形如:'id, name, email, age' 或 ['id', 'name', 'email', 'age'] 均可,默认是全部。
用例:
~~~
/**
* 测试根据id列表获取多行数据
*
* @return array
*/
public function testGetRowsByIds()
{
$ids = [1, 2, 3];
$fields = 'id, name, email';
return $this->getRowsByIds($ids, $fields);
}
~~~
* * * * *
#### updateById 根据主键id更新一条记录
~~~
DbModel::updateById($id, $row)
~~~
根据主键id更新一条记录。
参数表
| 参数名称 | 必选 | 类型 | 说明 |
| --- | --- | --- | --- |
| id | 是 | int | 主键id |
| row | 是 | array | 要更新的数据数组,必须是键值对数组 |
row必须是键值对数组,以字段名为键名,以字段值为键值,一维数组。
用例:
~~~
/**
* 测试根据id更新一行数据
*
* @return int 返回影响行数
*/
public function testUpdateById()
{
$id = 9;
$row = ['name' => '李老四', 'email' => '99@qq.com'];
return $this->updateById($id, $row);
}
~~~
* * * * *
#### deleteById 根据主键id删除一条记录
~~~
DbModel::deleteById($id)
~~~
根据主键id删除一条记录。
参数表
| 参数名称 | 必选 | 类型 | 说明 |
| --- | --- | --- | --- |
| id | 是 | int | 主键id |
用例:
~~~
/**
* 测试根据id删除一行数据
*
* @return int 返回影响行数
*/
public function testDeleteById()
{
$id = 7;
return $this->deleteById($id);
}
~~~
* * * * *
#### pluck 获取字段值列表
~~~
DbModel::pluck($field)
~~~
获取字段值列表。
参数表
| 参数名称 | 必选 | 类型 | 说明 |
| --- | --- | --- | --- |
| field | 是 | string | 字段名 |
用例:
~~~
/**
* 测试获取字段值列表
*
* @return array
*/
public function testPluck()
{
return $this->pluck('name');
}
~~~
返回结果示例:
~~~
[
"杨文杰",
"张三",
"李老四",
"张三他妈"
]
~~~