【问题标题】:Need to create subarray based on all common id of the array itself需要根据数组本身的所有公共 id 创建子数组
【发布时间】:2016-03-01 11:50:21
【问题描述】:
$result=array(
         [0]=>array
         (
            [jobseeker_id] => 85
            [jobtype] => 13
            [sid] => 85
         ))
         [1]=>array
         (
            [jobseeker_id] => 87
            [jobtype] => 11
            [sid] => 87
         ))
         [2]=>array
         (
            [jobseeker_id] => 85
            [jobtype] => 8
            [sid] => 85
         ))

require output=
$result=array(
         [0]=>array
         (
            [0]=>array(
                       [jobseeker_id] => 85
                       [jobtype] => 13
                       [sid] => 85
                      )
            [1]=>array(
                      [jobseeker_id] => 85
                      [jobtype] => 11
                      [sid] => 85
                      )
         [2]=>array
         (
            [jobseeker_id] => 87
            [jobtype] => 8
            [sid] => 87
         ));   

我想获得最终的数组,其中所有的 jobseeker 作为它的父键以及它的子数组中的作业。就像如果求职者 85 有 2 个工作数组应该是 $final_array[85][0] = Job one for 85; $final_array[85][1] = 85 的作业二; $final_array[51][0] = 51 的工作一; 像这样

【问题讨论】:

标签: php mysql codeigniter


【解决方案1】:

好的,您想要“我想获得最终数组,其中所有求职者作为它的父键和工作” 我假设您希望将 jobseaker_id 作为父键或数组,以便您可以这样做

foreach($oldarray as $key=>$element){
    $result[$element['jobseaker_id']][] = $element;   
}

所以在这种情况下,jobseaker_id = 85 将到达array([85]=>array([0]=>array([jobseeker_id] => 85)...))

【讨论】:

  • 请给我完整的答案,因为我对多维数组不太了解
  • 据我所知,这两个数组之间的区别在于,他的 [0] 上的所需一个基本上是旧的,所以这就是如何做到这一点。这是如何从第一个获得第二个的完整答案。我不知道你还需要什么。更精确。
  • $final_array[85][0] = 85 的工作一; $final_array[85][1] = 85 的作业二; $final_array[51][0] = 51 的工作一;
  • $final_array[85][0] = 85 的工作一; $final_array[85][1] = 85 的作业二; $final_array[51][0] = 51 的工作一;请任何人帮助
  • @DineshPithiya 检查我的编辑是否是您需要的?
【解决方案2】:
$result = array();
foreach ($array as $item) {
    // check if jobseeker_id key exists
    if (array_key_exists($item['jobseeker_id'], $result) && is_array($result[$item['jobseeker_id']]) )
        $result[$item['jobseeker_id']][] = $item; // add item to the array with key "jobseeker_id";
    else 
        $result[$item['jobseeker_id']] = array($item); // create key "jobseeker_id" and add item to the new array;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多