douju1968 2018-06-11 14:13
浏览 22
已采纳

重复数组不会使用php显示

I have an array, I want to show only unique "referal_user_id" array. In the code have four array and there are repeated "referal_user_id" i want when one time "referal_user_id" called then not repeated again. Like i want this array as second array.

Array
(
    [0] => stdClass Object
        (
            [id] => 23
            [user_id] => 21
            [referal_user_id] => 16
            [membership_name] => 4
            [points] => 100
            [used_code] => CEMJ916
            [earned_date] => 2018-06-11 06:34:00
        )

    [1] => stdClass Object
        (
            [id] => 24
            [user_id] => 22
            [referal_user_id] => 16
            [membership_name] => 4
            [points] => 400
            [used_code] => CEMJ916
            [earned_date] => 2018-05-31 06:42:07
        )

    [2] => stdClass Object
        (
            [id] => 25
            [user_id] => 16
            [referal_user_id] => 1
            [membership_name] => 2
            [points] => 200
            [used_code] => CEMJ916
            [earned_date] => 2018-06-06 08:36:46
        )

    [3] => stdClass Object
        (
            [id] => 27
            [user_id] => 15
            [referal_user_id] => 1
            [membership_name] => 1
            [points] => 100
            [used_code] => 64FPY1
            [earned_date] => 2018-06-11 06:46:03
        )

)

How can i filter unique array enter image description here

This array show like

Array
(
    [0] => stdClass Object
        (
            [id] => 23
            [user_id] => 21
            [referal_user_id] => 16
            [membership_name] => 4
            [points] => 100
            [used_code] => CEMJ916
            [earned_date] => 2018-06-11 06:34:00
        )

    [1] => stdClass Object
        (
            [id] => 25
            [user_id] => 16
            [referal_user_id] => 1
            [membership_name] => 2
            [points] => 200
            [used_code] => CEMJ916
            [earned_date] => 2018-06-06 08:36:46
        )

)
  • 写回答

3条回答 默认 最新

  • dongyi9023 2018-06-11 14:27
    关注

    You can use the classic foreach to group the array into a multidimensional array. Use array_values to convert the multidimensional array to simple array.

    $result = array();
    foreach( $arr as $val ) {
        if ( !isset( $result[$val->referal_user_id] ) ) $result[$val->referal_user_id] = $val;
    }
    
    $result = array_values( $result );
    
    echo "<pre>";
    print_r( $result );
    echo "</pre>";
    

    This will result to:

    Array
    (
        [0] => stdClass Object
            (
                [id] => 23
                [user_id] => 21
                [referal_user_id] => 16
                [membership_name] => 4
                [points] => 100
                [used_code] => CEMJ916
                [earned_date] => 2018-06-11 06:34:00
            )
    
        [1] => stdClass Object
            (
                [id] => 25
                [user_id] => 16
                [referal_user_id] => 1
                [membership_name] => 2
                [points] => 200
                [used_code] => CEMJ916
                [earned_date] => 2018-06-06 08:36:46
            )
    
    )
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂