Próbuję użyć array_combine, aby połączyć dwa wielowymiarowe tablice, ale jakoś nie robić tego poprawnie.PHP łączą dwie tablice wielowymiarowe
Oto array1:
Array(
[Nov 18, 2011] => Array(
[C] => 107705.5792
[I] => 44561.52
)
[Nov 22, 2011] => Array(
[C] => -8992.8352
)
)
i tu jest tablica2:
Array(
[Nov 18, 2011] => Array(
[C] => 3
[I] => 1
)
[Nov 22, 2011] => Array(
[C] => 2
)
)
Oto moja próba array_combine, który nie działa:
$array1 = ($arr1);
$array2 = ($arr2);
$result = array_combine($arr1, $arr2);
echo '<pre>';
print_r($result);
echo '</pre>';
Co robię źle? Oto rezultat, którego szukam:
Array(
[Nov 18, 2011] => Array(
[3] => 107705.5792
[1] => 44561.52
)
[Nov 22, 2011] => Array(
[2] => -8992.8352
)
)
Dzięki za pomoc.
- EDIT -
znalazłem, że jeśli zamiast używać array_merge_recursive, to mój wynik, że mam. Nie to, czego szukałem, ale blisko:
Array(
[Nov 18, 2011] => Array(
[C] => Array(
[0] => 3
[1] => 107705.5792
)
[I] => Array(
[0] => 1
[1] => 44561.52
)
)
[Nov 22, 2011] => Array(
[C] => Array(
[0] => 2
[1] => -8992.8352
)
)
)
- INNE EDIT -
Oto sposób, że starałem się realizować jeden z poniższych sugestii, jednak nie jest to praca dla mnie. Co jest nie tak ?:
function cust_array_merge(array &$array1, array $array2){
// loop through main array
foreach ($array1 as $key => $val) {
// check if $array2 has the same index
if (array_key_exists($key, $array2)) {
// reset $array1's indexes to $array2's values
foreach ($array2[$key] as $subKey => $subVal) {
if (array_key_exists($subKey, $array1[$key])) {
$tempVal = $array1[$key][$subKey];
unset($array1[$key][$subKey]);
$array1[$key][$subVal] = $tempVal;}}}}}
$merged = cust_array_merge($arr_cats_per_bill_date, $arr_cvat);
echo '<pre>';
print_r($merged);
echo '</pre>';
Czy chcesz zachować kluczowe referencje, czy nie obchodzi cię, że stanie się 0 1 2? Nie możesz mieć dwóch kluczy "C" lub "I" ani żadnej innej wartości w swojej tablicy. – phpmeh
Dlaczego dosłownie ** WSZYSTKO ** z twoich pytań ma dokładnie tę samą zawartość i tablice? Czy robimy twoją pracę domową czy coś w szkole? Jest to dosłownie trzecie lub drugie pytanie, które widziałem w ostatnim tygodniu lub dwóch, które jest prawie dokładnie takie samo jak poprzednie. –
@phpmeh, nie, nie chcę zachować kluczowych odniesień. – DanielAttard