Powiedzmy mam następujące tablice:Scalanie dwóch wielowymiarowych tablic na konkretnym kluczem
Array
(
[0] => Array
(
[id] => 5
[name] => Education
)
[1] => Array
(
[id] => 4
[name] => Computers
)
[3] => Array
(
[id] => 7
[name] => Science
[4] => Array
(
[id] => 1
[name] => Sports
)
)
a drugi:
Array
(
[0] => Array
(
[id] => 1
[title] => Sport
)
[1] => Array
(
[id] => 7
[title] => Sci
)
[3] => Array
(
[id] => 4
[title] => Comp
[4] => Array
(
[id] => 5
[title] => Edu
)
)
i pożądane wyjście jest:
Array
(
[0] => Array
(
[id] => 5
[name] => Education
[title] => Edu
)
[1] => Array
(
[id] => 4
[name] => Computers
[title] => Comp
)
[3] => Array
(
[id] => 7
[name] => Science
[title] => Sci
[4] => Array
(
[id] => 1
[name] => Sports
[title] => Sport
)
)
mam udało się połączyć te tablice z prostą:
foreach($first as $key => $value){
$result[$key] = array_merge($first[$key], $second[$key]);
}
ale wyjście nie łączy się prawidłowo:
Array
(
[0] => Array
(
[id] => 5
[name] => Education
[title] => Sport
)
[1] => Array
(
[id] => 4
[name] => Computers
[title] => Sci
)
[3] => Array
(
[id] => 7
[name] => Science
[title] => Comp
[4] => Array
(
[id] => 1
[name] => Sports
[title] => Edu
)
)
Problemem jest to, chciałbym połączyć te tablice na tym samym id
. Żądane sortowanie wyników powinno być takie samo jak w pierwszej macierzy.
Jak mogę to osiągnąć? Każda pomoc jest doceniana.
Jaka jest złożoność czasu? O (n^2)? Z pewnością można to zrobić lepiej. – velop