thinkphp框架中使用where($where)->field('approvel_id')->select();,查询返回得到的是一个数组。那如何让返回结果是值而不是数组呢?
时间: 2024-02-11 19:03:58 浏览: 66
thinkphp查询方式
如果你只想获取查询结果的一个值而不是一个数组,可以使用`value()`方法,例如:
```
$result = Db::name('table_name')->where($where)->value('approvel_id');
```
这个方法将会返回查询结果中`approvel_id`字段的值,而不是一个数组。如果查询结果为空,则返回`null`。
如果你想获取查询结果中的第一行第一个字段的值,可以使用`find()`方法,例如:
```
$result = Db::name('table_name')->where($where)->field('approvel_id')->find();
$value = reset($result);
```
`find()`方法将会返回查询结果中的第一行数据,你可以通过`reset()`函数获取数组中的第一个元素,即`approvel_id`字段的值。
如果你确定查询结果只有一行数据,也可以使用`column()`方法来获取查询结果中的一个字段的所有值,例如:
```
$result = Db::name('table_name')->where($where)->column('approvel_id');
$value = reset($result);
```
`column()`方法将会返回查询结果中`approvel_id`字段的所有值,你可以通过`reset()`函数获取数组中的第一个元素,即第一行数据的`approvel_id`字段的值。
阅读全文