Istnieje kilka sposobów na scalenie tablic w php. Główne funkcje array_merge () i array_merge_recursive () działają ze złożonymi tablicami. Metoda implode () obsługuje wielowymiarowe tablice. Istnieje sposób łączenia elementów tablic i łączenia elementów jednej tablicy w łańcuch.
function array_merge ()
Za pomocą tej funkcji php łączy tablice w nową osobną tablicę. Elementy drugiej tablicy znajdują się na końcu pierwszego. Jeśli przetworzone tablice mają te same klucze, powiązanie nastąpi w następujący sposób. Jeśli klucze zawierają elementarne elementy, elementy są zastępowane, a każda kolejna wartość zastępuje poprzednią. Jeśli elementy z jednym kluczem są numeryczne, to każdy element zostanie dodany na końcu tablicy. W rezultacie wartości będą sortowane według klucza w kolejności rosnącej.
Elementy w nowej tablicy są ułożone w taki sposób, że element zerowy jest wartością za pomocą klawisza koloru, a następnie liczby 2 i 4 po nich a, b. Idąc za nimi, kształt = & gt; trapez i 4. Należy zwrócić uwagę na elementy ze wspólnym kluczem. W tym przypadku pozostaje zielony.
Wykonanie:
Tablica
(
[kolor] => zielony
= 2
=> 4
=>
=> b
shape] => trapez
=> 4
)
Drugim przykładem jest łączenie tablic w php.
Wszystkie elementy są tutaj przechowywane, z wyjątkiem tych, które mają wspólny klucz 3. W tym przypadku pozostaje wartość pierwszej tablicy. Wynik:
tablica {
= & gt;
string "zero_a"
= & gt;
string "two_a"
= & gt;
ciąg "three_a"
= & gt;
string "one_b"
= & gt;
, łańcuch "four_b"
}
array_merge_recursive () ,
Funkcja array_merge_recursive ()
,
Ta funkcja może rekursywnie łączyć tablice do php. Wartości jednej tablicy są przekazywane do końca innej. Łączenie jest takie samo jak w funkcji array_merge (). Główna różnica, która bierze pod uwagę absolutnie wszystkie dane, w tym dołączone wielowymiarowe tablice.
W tym przypadku elementy tablic z kluczowymi kluczami są połączone. Jednocześnie połączone są również takie elementy, które mają wspólny klucz klucza. Numery 510 są sekwencyjnie dodawane do nowej tablicy. Kolor elementu = & gt; array () staje się początkiem odebranej tablicy, a następnie 5 i 10. W tym przypadku wartość niebieska jest usuwana, pozostaje czerwona i zielona. Wynik:
tablicy
(
[koloru] = & gt, Array
(
[ulubiony] = & gt ; Array
(
= & gt, czerwony
= & gt, zielony
)
[0 ] = & gt, niebieskim
)
= kwas 5
= & gt; 10
),[70 ]
funkcja implode ()
,
, aby połączyć układ php w ciągu metoda implode (). Pełna składnia:
string implode (string $ glue, array $ pieces)
Łańcuch $ glue jest domyślnie pusty, jest opcjonalny. Tablica $ pieces to element, który ostatecznie zostanie scalony. W rezultacie zwracany jest ciąg znaków z elementami tablicy, pomiędzy którymi znajduje się separator kleju $. Tak więc:
$ sztuk . $ klej $ pieces . $ klej $ pieces
Można wybrać funkcję warunkowąfunkcja implode () jest przeciwna do explode (), która dzieli łańcuch na elementy i przenosi je do tablicy.
W tym miejscu elementy tablicy "name", "mail" i "phone" zostaną połączone w linię $ comma_separated. Jako separator między elementami używane jest słowo ",". Spowoduje to wyświetlenie linii "nazwa, mail, telefon".
Podsumowanie
Trzy sposoby łączenia dwóch tablic w php to:
array_merge ();
array_merge_recursive ();
implode ().
Różnica między drugą metodą od pierwszej polega na tym, że związek jest rekurencyjny. Oznacza to, że gdy połączymy wielowymiarowe tablice, elementy każdej zagnieżdżonej tablicy zostaną połączone ze sobą. W rezultacie w obu przypadkach tworzona jest nowa tablica składająca się z elementów dwóch przetworzonych. W procesie wykonywania pojawiają się następujące funkcje, w których wartości jednej tablicy są zastępowane przez elementy innej tablicy. W innych przypadkach możliwe jest, że elementy są dodawane tuż na końcu tablicy. Funkcja implode () łączy elementy dwóch tablic w łańcuchu. W argumentach możesz zdefiniować znak, który podzieli słowa.