[ create a new paste ] login | about

Link: http://codepad.org/60IKweVu    [ raw code | output | fork ]

PHP, pasted on Oct 13:
<?php
$A = array("EUR"=>10,"USD"=>20);
$B = array("EUR"=>10,"JPY"=>20);

$C = array_merge_recursive($A, $B);
var_dump($C);

//
// This emulates the array_merge_recursive call
//
$C = array();
$allArrays = array($A, $B);
foreach($allArrays as $array) {
    foreach ($array as $key => $value) {
        if (! isset($C[$key])) {
            $C[$key] = array();
        }
        $C[$key][] = $value;
    }
}

foreach ($C as $index => $values) {
    if (count($values) == 1) {
        $C[$index] = $values[0];
    }
}

var_dump($C);


Output:
array(3) {
  ["EUR"]=>
  array(2) {
    [0]=>
    int(10)
    [1]=>
    int(10)
  }
  ["USD"]=>
  int(20)
  ["JPY"]=>
  int(20)
}
array(3) {
  ["EUR"]=>
  array(2) {
    [0]=>
    int(10)
    [1]=>
    int(10)
  }
  ["USD"]=>
  int(20)
  ["JPY"]=>
  int(20)
}


Create a new paste based on this one


Comments: