Funkcja php array_diff_assoc

Funkcja php array_diff_assoc
Funkcja Array_Diff () w PHP służy do zwracania elementów z parami kluczowej obecnej w pierwszej tablicy wejściowej, ale nie obecnej w pozostałych układach wejściowych (druga tablica, trzecia tablica itp.) na podstawie kluczy i wartości. Możemy po prostu powiedzieć, że zwraca różnicę w tablicach, które mają pary wartości kluczowej. Jest to samo, co operacja różnicy ustawionej.

Składnia:
array_diff_assoc (array_input1, array_input2,… .)

Parametr wymaga dwóch lub więcej tablic.

Przykład 1:

W tym przykładzie utworzymy trzy tablice (pary klucza: wartości) i zastosujemy funkcję array_diff_assoc (), aby zwrócić różnicę tablicy.

Tutaj pierwsza tablica ma pięć elementów -1 => „Lotus”, 2 => „Land”, 3 => 45, 4 => 14 i 5 => „Indie”. Druga tablica ma pięć elementów - 1 => „jaśmin”, 2 => „woda”, 3 => 25, 4 => 24 i 5 => 'USA'. Trzecia tablica ma również pięć elementów -1 => „Lotus”, 2 => „Land”, 3 => 45, 4 => 14 i 5 => „Indie”.

// Utwórz tablicę o nazwie Flower1
$ Flower1 = tablica (1 => „lotus”, 2 => „land”, 3 => 45,4 => 14,5 => „Indie”);
// Utwórz tablicę o nazwie Flower2
$ Flower2 = tablica (1 => „Jasmine”, 2 => „woda”, 3 => 25,4 => 24,5 => 'USA');
// Utwórz tablicę o nazwie Flower3
$ Flower3 = tablica (1 => 'lotus', 2 => 'land', 3 => 45,4 => 14,5 => 'India');
print_r ($ flower1);
print_r ($ flower2);
print_r ($ flower3);
druk („różnica tablicy:”);
// array_diff na $ kwiat1, $ kwiat 2 i $ kwiat3
print_r (array_diff_assoc ($ flower1, $ flower2, $ flower3));
?>

Wyjście:

Widzimy, że wartości kluczowe 1-Lotus, 2-Land, 3-45, 4-14 i 5-Indie są obecne w pierwszej tablicy, a także w trzeciej tablicy. Stąd żaden element nie jest zwracany. Zatem zwracana jest pusta tablica (array ()).

Przykład 2:

W tym przykładzie utworzymy trzy tablice (pary klucza: wartości) i zastosujemy funkcję array_diff_assoc (), aby zwrócić różnicę tablicy.

Tutaj pierwsza tablica ma pięć elementów -1 => „Marigold”, 2 => „oba”, 3 => 5, 4 => 1 i 5 => „Nepal”. Druga tablica ma pięć elementów - 1 => „jaśmin”, 2 => „woda”, 3 => 25, 4 => 24 i 5 => 'USA'. Trzecia tablica ma również pięć elementów - 1 => „Lotus”, 2 => „Land”, 3 => 45, 4 => 14 i 5 => „Indie”.

// Utwórz tablicę o nazwie Flower1
$ Flower1 = tablica (1 => „Marigold”, 2 => 'oba', 3 => 5,4 => 1,5 => 'nepal');
// Utwórz tablicę o nazwie Flower2
$ Flower2 = tablica (1 => „Jasmine”, 2 => „woda”, 3 => 25,4 => 24,5 => 'USA');
// Utwórz tablicę o nazwie Flower3
$ Flower3 = tablica (1 => 'lotus', 2 => 'land', 3 => 45,4 => 14,5 => 'India');
print_r ($ flower1);
print_r ($ flower2);
print_r ($ flower3);
druk („różnica tablicy:”);
// array_diff na $ kwiat1, $ kwiat 2 i $ kwiat3
print_r (array_diff_assoc ($ flower1, $ flower2, $ flower3));
?>

Wyjście:

Widzimy, że wartości kluczowe 1 => „Marigold”, 2 => „oba”, 3 => 5, 4 => 1 i 5 => „Nepal” są obecne w pierwszej tablicy, ale nie są obecne w pozostałe dwie tablice. Stąd wszystkie elementy z pierwszej tablicy są zwracane.

Przykład 3:

W tym przykładzie utworzymy dwie tablice (klucz: pary wartości) i zastosujemy funkcję array_diff_assoc (), aby zwrócić różnicę tablicy.

Tutaj pierwsza tablica ma pięć elementów -1 => „Lotus”, 2 => „Land”, 3 => 45, 4 => 14 i 5 => „Indie”. Druga tablica ma pięć elementów - 1 => „jaśmin”, 2 => „woda”, 3 => 25, 4 => 24 i 5 => 'USA'.

// Utwórz tablicę o nazwie Flower1
$ Flower1 = tablica (1 => „lotus”, 2 => „land”, 3 => 45,4 => 14,5 => „Indie”);
// Utwórz tablicę o nazwie Flower2
$ Flower2 = tablica (1 => „Jasmine”, 2 => „woda”, 3 => 25,4 => 24,5 => 'USA');
print_r ($ flower1);
print_r ($ flower2);
druk („różnica tablicy:”);
// array_diff na $ flower1 i $ flower2
print_r (array_diff_assoc ($ flower1, $ flower2));
?>

Wyjście:

Widzimy, że wartości kluczowe 1-Lotus, 2-Land, 3-45, 4-14 i 5-Indie są obecne w pierwszej tablicy, ale nie w drugiej tablicy. Stąd wszystkie elementy z pierwszej tablicy są zwracane.

Przykład 4:

W tym przykładzie utworzymy dwie tablice (klucz: pary wartości) i zastosujemy funkcję array_diff_assoc (), aby zwrócić różnicę tablicy.

Tutaj pierwsza tablica ma pięć elementów - 1 => „Lotus”, 2 => „Land”, 3 => 45, 4 => 14 i 5 => „Indie”. Druga tablica ma pięć elementów - 1 => „jaśmin”, 2 => „woda”, 3 => 25, 4 => 24 i 5 => 'USA'.

// Utwórz tablicę o nazwie Flower1
$ Flower1 = tablica (1 => „lotus”, 2 => „land”, 3 => 45,4 => 14,5 => „Indie”);
// Utwórz tablicę o nazwie Flower2
$ Flower2 = tablica (1 => „Jasmine”, 2 => „oba”, 3 => 25,4 => 24,5 => „Indie”);
print_r ($ flower1);
print_r ($ flower2);
druk („różnica tablicy:”);
// array_diff na $ flower1 i $ flower2
print_r (array_diff_assoc ($ flower1, $ flower2));
?>

Wyjście:

Widzimy, że wartości kluczowe 1 => „Lotus”, 2 => „Land”, 3 => 45 i 4 => 14 są obecne w pierwszej tablicy, ale nie w drugiej tablicy. Stąd te elementy z pierwszej tablicy są zwracane.

Wniosek

W tym artykule PHP nauczyliśmy się wykonywać funkcję array_diff_assoc () na dwóch lub wielu tablicach z parami kluczowej wartości . Zwraca elementy obecne w pierwszej tablicy, ale nie obecne w pozostałych tablicach. Omówiliśmy tę koncepcję z czterema różnymi przykładami.