84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
Thinkphp select后的数组是一个二维数组,键是从0开始排序的,数组里面是带有ID,现在我要查出来的结果是,一个二维数组,键是数据的ID.
有什么办法呢?
认证高级PHP讲师
复制一个数组不行吗
1, 'name' => "Bob", 'sex' => "男", ], [ 'id' => 2, 'name' => "Frank", 'sex' => "男", ], ]; $arr2 = []; for ($i=0; $i < count($arr); $i++) { $arr2[$arr[$i]['id']] = $arr[$i]; unset($arr2[$arr[$i]['id']]['id']); } var_dump($arr2);
使用thinkphp的getField()方法查询。getField方法不只是用来查询个别字段的值,还可以用来指定查询结果的数组索引。如果传入了2个以上的字段名,则返回一个二维数组(类似select方法的返回值,区别在于索引是二维数组的键名是第一个字段的值),例如:
$result = $User->where('status=1')->getField('id,account,nickname');
获得的数组就是以id(第一个字段)为数组键,id,account,nickname字段数据为值组成的数组。只填入2个字段则得到的键值对。
详细:getField用法总结
复制一个数组不行吗
使用thinkphp的getField()方法查询。
getField方法不只是用来查询个别字段的值,还可以用来指定查询结果的数组索引。
如果传入了2个以上的字段名,则返回一个二维数组(类似select方法的返回值,区别在于索引是二维数组的键名是第一个字段的值),例如:
获得的数组就是以id(第一个字段)为数组键,id,account,nickname字段数据为值组成的数组。
只填入2个字段则得到的键值对。
详细:getField用法总结