zoukankan      html  css  js  c++  java
  • 遇到了一个问题,php数组的

    这两天整一个数据,捯饬了好久。。。

    需求是这样的

     

    <?php

    $a = array ();

    $a[] = ['week'=>'1','day'=>'1'];

    $a[] = ['week'=>'1','day'=>'2'];

    $a[] = ['week'=>'1','day'=>'4'];

    $a[] = ['week'=>'2','day'=>'1'];

    $a[] = ['week'=>'2','day'=>'3'];

    $a[] = ['week'=>'2','day'=>'5'];

    // var_dump($a);

    //期望输出

    //$b =['1'=>'1,2,4'],['2'=>'1,3,5']

     

    想了好多php自带的数组函数,都没有成功,后来去找大神了。

    思路1:

    因为数据是从数据库直接查出来的

    想要的结果样式其实是可以通过SQL实现:

    SELECT week,GROUP_CONCAT(`day`) as day

    FROM `user_progress`

    where openid ='oC_c95aBUFxnsulu6AWiS9iivtkw' && level=1

    GROUP BY `week`;

    结果:

    这个MYSQL函数可以学习一下:GROUP_CONCAT

    思路2:通过php处理实现

     

    $a = array ();

    $b = array ();

    $a[] = ['week'=>'1','day'=>'1'];

    $a[] = ['week'=>'1','day'=>'2'];

    $a[] = ['week'=>'1','day'=>'4'];

    $a[] = ['week'=>'2','day'=>'1'];

    $a[] = ['week'=>'2','day'=>'3'];

    $a[] = ['week'=>'2','day'=>'5'];

    // var_dump($a);

     

    foreach($a as $value){

    $b[$value['week']][] = $value['day'];

    }

    var_dump($b);

    结果

    文章来源:刘俊涛的博客

    欢迎关注,有问题一起学习欢迎留言、评论。

  • 相关阅读:
    黑客无处不在
    微博对我的影响
    WPF Chart DynamicDataDisplay的横坐标显示日期的解决方案
    java虚拟机中的字节码
    python解释器的使用
    Python学习环境设置
    变量的概念
    创建虚拟环境和常用包
    第三章笔记
    第一章笔记
  • 原文地址:https://www.cnblogs.com/lovebing/p/9831938.html
Copyright © 2011-2022 走看看