需要根据数组本身的所有常见id创建子数组

时间:2015-11-27 09:50:57

标签: php mysql codeigniter

$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] =作业一个为85; $ final_array [85] [1] = 85的工作2; $ final_array [51] [0] = 51的工作一; 像那样

2 个答案:

答案 0 :(得分:0)

好的,你想要“我希望得到最后一个数组,所有求职者作为它的主键和工作” 我假设您希望jobseaker_id作为父键或数组,因此您可以这样做

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

因此,在这种情况下,jobseaker_id = 85将进入array([85]=>array([0]=>array([jobseeker_id] => 85)...))

答案 1 :(得分:0)

$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;
}