首页 > 解决方案 > 如何使用 php 中的 json 数组删除声誉我想让它们像圆圈中给出的那样是唯一的

问题描述

我想让这些数组独一无二,因为它被标记为圆圈。它不应该重复相同的。

$session_activity_category = array();

array_walk($search_venue, function($venue_b) use (&$session_activity_category) {
    $categories = $this->users_model->search_categories_by_session($venue_b->activity_venue_id);

    foreach ($categories as $category) {
        $session_activity_category[] = $category;
    }
});


 return $this->output
    ->set_content_type('application/json')
    ->set_status_header(200)
    ->set_output(json_encode(array('activity_category'=>$session_activity_category,'activity'=>$session_activity,'activity_session'=>$search_session,'activity_venue'=>$search_venue),JSON_UNESCAPED_SLASHES)  
    );

在此处输入图像描述

标签: phpjsonapicodeigniter

解决方案


î 认为最好的方法是为您的阵列提供唯一的密钥

像下面这样的东西应该工作

$session_activity_category = array();

array_walk($search_venue, function($venue_b) use (&$session_activity_category) {
    $categories = $this->users_model->search_categories_by_session($venue_b->activity_venue_id);

    foreach ($categories as $category) {
        $session_activity_category[$category->venue_id.$category->activity_cat_id] = $category;
    }
});

return $this->output
    ->set_content_type('application/json')
    ->set_status_header(200)
    ->set_output(
        json_encode(
            array(
                'activity_category' => array_values($session_activity_category),
                'activity' => $session_activity,
                'activity_session' => $search_session,
                'activity_venue' => $search_venue
            ),
        JSON_UNESCAPED_SLASHES)  
    );

推荐阅读