Thinkphp select后的数组是一个二维数组,键是从0开始排序的,数组里面是带有ID,现在我要查出来的结果是,一个二维数组,键是数据的ID.
有什么办法呢?
Thinkphp select后的数组是一个二维数组,键是从0开始排序的,数组里面是带有ID,现在我要查出来的结果是,一个二维数组,键是数据的ID.
有什么办法呢?
使用thinkphp的getField()方法查询。
getField方法不只是用来查询个别字段的值,还可以用来指定查询结果的数组索引。
如果传入了2个以上的字段名,则返回一个二维数组(类似select方法的返回值,区别在于索引是二维数组的键名是第一个字段的值),例如:
$result = $User->where('status=1')->getField('id,account,nickname',true);
获得的数组就是以id(第一个字段)为数组键,id,account,nickname字段数据为值组成的数组。
只填入2个字段则得到的键值对。
详细:getField用法总结
楼上的方法应该也可以,我这里补充一个
$array= [
[
'id'=>10,
'name'=>'zs',
'age'=>18,
],
[
'id'=>11,
'name'=>'ls',
'age'=>19,
],
[
'id'=>12,
'name'=>'ww',
'age'=>20,
],
];
$index_id = array_column($array,null,'id');
4 回答13.4k 阅读✓ 已解决
5 回答7.8k 阅读✓ 已解决
2 回答1k 阅读✓ 已解决
1 回答994 阅读✓ 已解决
3 回答1.2k 阅读
1 回答1.5k 阅读
1 回答1.5k 阅读
复制一个数组不行吗