PHP实现分组 类似mysql groupby+in读取
PHP实现分组 类似mysqlgroupby+in读取 反正都要读取 那就用PHP来分组吧
/** * @description:根据数据 * @param {dataArr:需要分组的数据;keyStr:分组依据} * @retu: */protected function dataGroup($dataArr, $keyStr){$newArr = [];foreach ($dataArr as $k => $val) { $newArr[$val[$keyStr]][] = $val;}retu $newArr;}
$array = array(array('name' => 'zhangsan', 'chinese' => '89', 'math' => '95', 'english' => '88'),array('name' => 'zhangsan', 'chinese' => '11', 'math' => '816', 'english' => '90'),array('name' => 'lisi', 'chinese' => '3', 'math' => '286', 'english' => '902'),array('name' => 'lisi', 'chinese' => '921', 'math' => '836', 'english' => '90'),array('name' => 'lisi', 'chinese' => '291', 'math' => '846', 'english' => '290'),);$list=$this->dataGroup($array,'name');print_r($list);exit();
输出如下
Array([zhangsan] => Array([0] => Array([name] => zhangsan[chinese] => 89[math] => 95[english] => 88)[1] => Array([name] => zhangsan[chinese] => 11[math] => 816[english] => 90))[lisi] => Array([0] => Array([name] => lisi[chinese] => 3[math] => 286[english] => 902)[1] => Array([name] => lisi[chinese] => 921[math] => 836[english] => 90)[2] => Array([name] => lisi[chinese] => 291[math] => 846[english] => 290)))
如果遇到什么不懂的地方直接关注公众号留言(本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。)
作者:newmiracle
出处:https://www.cnblogs.com/newmiracle/
作者:newmiracle宇宙
来源链接:https://www.cnblogs.com/newmiracle/p/13884241.html
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。