2016-11-05 3 views
-2

Bitte helfen, dieses Problem zu lösen ich will dieseWie innere Anordnung mit demselben Schlüsselwert fusionieren

[UI Testing] => Array 
     (
      [0] => Array 
       (
        [0] => 0 
        [1] => 70 
       ) 

      [1] => Array 
       (
        [0] => 40 
        [1] => 0 
       ) 

     ) 

TO

[UI Testing] => Array 
     (
      [0] => Array 
       (
        [0] => 40 
        [1] => 70 
       ) 

     ) 

Dank ändern.

+0

Verbessern Sie Ihre Frage Qualität Ihre Bemühungen auch in teilen, was alles, was Sie versucht haben. – Shubhamoy

+0

Welche Art von Transformation möchten Sie machen? Suchen Sie nach maximalen Zahlen in der gleichen Taste? –

Antwort

0

Beispiel

$myArray = array(); 
$myArray[] = array(0,70); 
$myArray[] = array(40,0); 

$sumArray = array(); 

foreach ($myArray as $k=>$subArray) { 
    foreach ($subArray as $id=>$value) { 

    array_key_exists($id, $sumArray) ? $sumArray[$id] += $value : $sumArray[$id] = $value; 
    } 
} 

print_r($sumArray); 

Output:

Array 
(
    [0] => 40 
    [1] => 70 
) 
0

Array filtered sein kann 0 bewertet Indizes zu entfernen und array_reduce Array zu verschmelzen. Ein Beispiel unter:

$arr = array('UI Testing' => array(array(0, 70), array(40, 0),)); 

$new_arr['UI Testing'] = array_reduce($arr['UI Testing'], function($old, $new) { 
    return array_filter($new, function($v){ return $v > 0 ? $v : null; }) + $old; 
}, []); 

print '<pre>'; 
print_r($new_arr); 
print '</pre>'; 

Ausgabe

Array 
(
    [UI Testing] => Array 
     (
      [0] => 40 
      [1] => 70 
     ) 
) 
Verwandte Themen