Home > Backend Development > PHP Tutorial > 如何把时间数组同时列出来?

如何把时间数组同时列出来?

WBOY
Release: 2016-06-06 20:33:42
Original
1125 people have browsed it

数据库打印后数组结果:

<code>Array
(
    [0] => Array
        (
            [department] => 雅典娜
              [sign] => 0
            [time] => 2015年06月01日
            [surname] => 星史
        )

    [1] => Array
        (
            [department] => 雅典娜
            [sign] => 0
            [time] => 2015年06月02日
            [surname] =>  星史
        )

    [2] => Array
        (
            [department] => 雅典娜
            [sign] => 0
            [time] => 2015年06月03日
            [surname] => 瞬
        )

    [3] => Array
        (
            [department] => 雅典娜
            [sign] => 0
            [time] => 2015年06月03日
            [surname] => 紫龙
        )
</code>
Copy after login
Copy after login

我把数组 相同的都要统计下来,比方说星史 有两个数组,统计为2,其它为1.
那么数组写法是

<code>$array=array();
foreach($上面打印的数组 as $v){
    if(!isset($array[$v['surname']])){
              $out_put[$v['surname']]['time']=$v['time'];
              $array[$v['surname']]['count']=1;
    }else{
         $array[$v['surname']]['count']=$array[$v['surname']]['count']+1;
    }
}

</code>
Copy after login
Copy after login

然后打印出

<code>Array
(
    [星史] => Array
        (
           //问题再这里,如何数组输出多个时间呢  [time] = 2015年06月01日、2015年06月02日
             [time] =2015年06月01日;
            [count] => 2
        )

    [瞬] => Array
        (
             [time] =2015年06月03日;
             [count] => 1
        )

    [紫龙 => Array
        (
           [time] =2015年06月03日;
            [count] => 1
        )



)
</code>
Copy after login
Copy after login

这个打印如何输出时间呢?

回复内容:

数据库打印后数组结果:

<code>Array
(
    [0] => Array
        (
            [department] => 雅典娜
              [sign] => 0
            [time] => 2015年06月01日
            [surname] => 星史
        )

    [1] => Array
        (
            [department] => 雅典娜
            [sign] => 0
            [time] => 2015年06月02日
            [surname] =>  星史
        )

    [2] => Array
        (
            [department] => 雅典娜
            [sign] => 0
            [time] => 2015年06月03日
            [surname] => 瞬
        )

    [3] => Array
        (
            [department] => 雅典娜
            [sign] => 0
            [time] => 2015年06月03日
            [surname] => 紫龙
        )
</code>
Copy after login
Copy after login

我把数组 相同的都要统计下来,比方说星史 有两个数组,统计为2,其它为1.
那么数组写法是

<code>$array=array();
foreach($上面打印的数组 as $v){
    if(!isset($array[$v['surname']])){
              $out_put[$v['surname']]['time']=$v['time'];
              $array[$v['surname']]['count']=1;
    }else{
         $array[$v['surname']]['count']=$array[$v['surname']]['count']+1;
    }
}

</code>
Copy after login
Copy after login

然后打印出

<code>Array
(
    [星史] => Array
        (
           //问题再这里,如何数组输出多个时间呢  [time] = 2015年06月01日、2015年06月02日
             [time] =2015年06月01日;
            [count] => 2
        )

    [瞬] => Array
        (
             [time] =2015年06月03日;
             [count] => 1
        )

    [紫龙 => Array
        (
           [time] =2015年06月03日;
            [count] => 1
        )



)
</code>
Copy after login
Copy after login

这个打印如何输出时间呢?

<code>php</code><code><br>$arr = Array(
   Array
        (
            'department' => '雅典娜',
              'sign' => 0,
            'time' => '2015年06月01日',
            'surname' => '星史'
        )
,
     Array
        (
            'department' => '雅典娜',
            'sign' => 0,
            'time' => '2015年06月02日',
            'surname' =>  '星史'
        )
,
     Array
        (
            'department' => '雅典娜',
            'sign' => 0,
            'time' => '2015年06月03日',
            'surname' => '瞬'
        ),

     Array
        (
            'department' => '雅典娜',
            'sign' => 0,
            'time' => '2015年06月03日',
            'surname' => '紫龙'
        )
);
$array=array();
foreach($arr as $v){
    if(!isset($array[$v['surname']])){
              $array[$v['surname']]['count']=1;
              $array[$v['surname']]['time']=$v['time'];
    }else{
         $array[$v['surname']]['count']+=1;
         $array[$v['surname']]['time'].=','.$v['time'];
    }
}
print_r($array);

uasort($array,function($a,$b){
    return $b['count'] - $a['count'];
});





</code>
Copy after login
Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template