2017-11-18 1 views
2

문제가 생겼습니다. 나는 배열이같은 배열의 배열 인덱스 병합

print_r($log_ret_val); 
Array ([0] => Array ([0] => Array ([TestingLogDevice] => Array ([Siteid] => Mirpur_CO)) 
         [1] => Array ([TestingLogDevice] => Array ([Siteid] => Mirpur_CO)) 
    ) 
     [1] => Array ([0] => Array ([TestingLogDevice] => Array ([Tempin] => 29)) 
         [1] => Array ([TestingLogDevice] => Array ([Tempin] => 29)) 
    ) 
     [2] => Array ([0] => Array ([TestingLogDevice] => Array ([Date_time] => 18.11.2017 11:03:33)) 
         [1] => Array ([TestingLogDevice] => Array ([Date_time] => 18.11.2017 11:00:31)) 
    ) 
) 

처럼 보이는이 그리고 이것은 내가 그 값

$log_val  = array(); 
foreach ($log_ret_val as $key => $valuee) { 
    foreach ($valuee as $key => $val) { 
     array_push($log_val,$val); 
    } 
} 
print_r($log_val); 

Array ([0] => Array ([TestingLogDevice] => Array ([Siteid] => Mirpur_CO)) 
     [1] => Array ([TestingLogDevice] => Array ([Siteid] => Mirpur_CO)) 
     [2] => Array ([TestingLogDevice] => Array ([Tempin] => 29))     
     [3] => Array ([TestingLogDevice] => Array ([Tempin] => 28)) 
     [4] => Array ([TestingLogDevice] => Array ([Date_time] => 18.11.2017 11:24:45)) 
     [5] => Array ([TestingLogDevice] => Array ([Date_time] => 18.11.2017 11:21:43)) 
) 

에 대한 쓰기 그러나이

Array ([0] => Array ([TestingLogDevice] => Array ([Siteid] => Mirpur_CO [Tempin] => 29 [Date_time] => 18.11.2017 11:24:45)) 
     [1] => Array ([TestingLogDevice] => Array ([Siteid] => Mirpur_CO [Tempin] => 28 [Date_time] => 18.11.2017 11:21:43)) 
) 

그래서 내가 무엇을 충족 할 수처럼 내 원하는 출력이 모습입니다 내 원하는 출력. 당신의 친절한 제안 또는 도움이 필요한 $log_ret_val 통해

+0

당신은'$의 log_ret_val' 배열에 대한 샘플을 제공 할 수있는 새로운 배열을 만들 수 array_merge_recursive을 사용하십시오? 감사합니다 – Erwin

+0

난 당신이 여분의 필드를 일치하는 방법을 볼 수 없어 .... .... 아마 'for 루프'를하고 evens을 건너 뛰는가? – Forbs

+0

@Erwin은 $ log_ret_val 값을 –

답변

2

루프는 키 추출하고

$log_ret_val = Array ("0" => Array ("0" => Array ("TestingLogDevice" => Array ("Siteid" => "Mirpur_CO")) , 
         "1" => Array ("TestingLogDevice" => Array ("Siteid" => "Mirpur_CO")) , 
) , 
     "1" => Array ("0" => Array ("TestingLogDevice" => Array ("Tempin" => 29)) , 
         "1" => Array ("TestingLogDevice" => Array ("Tempin" => 29)) , 
) , 
     "2" => Array ("0" => Array ("TestingLogDevice" => Array ("Date_time" => "18.11.2017 11:03:33")) , 
         "1" => Array ("TestingLogDevice" => Array ("Date_time" => "18.11.2017 11:00:31")) 
) 
); 
$log_val = array(); 
foreach ($log_ret_val as $key => $value) { 
    foreach ($value as $key1 => $value1) { 
     if(isset($log_val[$key1])) 
      $log_val[$key1] = array_merge_recursive($log_val[$key1],$value1); 
     else 
      $log_val[$key1] = array_merge_recursive($value1); 
    } 
} 
print_r($log_val); 

DEMO

+0

좋은 직장. 그것은 작동합니다. –

+0

@ A.ANANAN을 도와 주어서 다행 –