Wprowadzenie do tablicy asocjacyjnej

Tablica to zbiór podobnych i niepodobnych typów danych. Tablica przechowuje w danych powiązanych ze zmiennymi. Potrzebujemy tablic, aby utworzyć i przechowywać tak wiele liczb zmiennych wartości w jednej zmiennej. Istnieją trzy typy tablic w PHP. Tablice numeryczne, tablice asocjacyjne i tablice wielowymiarowe. Tablica asocjacyjna ma postać pary klucz-wartość, gdzie klucz jest indeksem tablicy, a wartość jest elementem tablicy. Tutaj klucz może być zdefiniowany przez użytkownika. Jest podobny do tablicy numerycznej, ale klucze i wartości przechowywane są w postaci pary klucz-wartość.

W tym temacie poznamy tablicę asocjacyjną w PHP.

Składnia

//First Way
$input = array("key1"=>"value1", "key2"=>"value2", "key3"=>"value3");
//Second Way
$input("key1") = value1;
$input("key2") = value2;
$input("key3") = value3;

gdzie $ input to nazwa tablicy, key1 to indeks elementu tablicy, a wartość1 to wartość elementu tablicy

Jak utworzyć tablicę asocjacyjną w PHP?

Tablica asocjacyjna jest deklarowana za pomocą słowa kluczowego array. Wartość klucza w tablicy deklarowana jest za pomocą strzałki „=>”. Istnieją dwa sposoby utworzenia tablicy asocjacyjnej.

Poniżej podano przykład

Kod:

<_?php
// create associative array
// first way
$family = array("father" => "Mohan", "mother"=>"Sita", "son"=> "Raj", "daughter"=> "Mona");
// second way
$family("father") = "Mohan";
$family("mother") = "Sita";
$family("son") = "Raj";
$family("daughter") = "Mona";
?>

Jak przechodzić przez tablicę asocjacyjną w PHP przy użyciu różnych metod

Istnieją dwie metody przechodzenia przez tablicę asocjacyjną. Jedna to pętla foreach, a druga to pętla.

Metoda nr 1

W tym przykładzie tablica jest zadeklarowana i nazwana jako rodzina $. Ta tablica ma formę klucz-wartość, w której kluczami są nazwy relacji takich jak Ojciec, Matka, Syn, Córka. I każdy klucz zawiera nazwę związku, tak jak pierwsza wartość indeksu Ojciec to Mohan, druga wartość indeksu Matka to Sita, trzecia wartość indeksu Syn to Raj, czwarta wartość indeksu Córka to Mona. Aby przejść przez tę tablicę, używamy pętli foreach, w której wypisujemy oba klucze jako Ojciec, Matka, Syn, Córka oraz wartości jako Mohan, Sita, Raj i Mona z tablicy.

Kod:

<_?php
//example of the associative array
$family = array("father" => "Mohan", "mother"=>"Sita", "son"=> "Raj", "daughter"=> "Mona");
//first method to traverse the associative array
foreach($family as $key=>$value) (
echo $key .' is '.$value;
echo '
';
)
?>

Metoda nr 2

W tym przykładzie użyjemy tej samej rodziny tablic jak w poprzednim przykładzie i będziemy przechodzić za pomocą pętli for. Będziemy także używać funkcji array_keys, aby uzyskać klucze tablicy, którymi są ojciec, matka, syn i córka. Te klucze są zwracane w postaci tablicy. Funkcja array_keys przyjmuje tablicę wejściową jako parametr i generuje tablicę indeksowaną. Teraz, aby wykonać iterację w tej pętli, użyjemy pętli i wydrukujemy klucze i wartości zgodnie z wymaganiami.

Kod:

// Example to demonstrate for loop
$family = array("father" => "Mohan", "mother"=>"Sita", "son"=> "Raj", "daughter"=> "Mona");
$length = count($family);
$keys = array_keys($family);
// for loop to traverse associative array
for($i=0; $i<$length; $i++) (
echo "
". $keys($i) . " => " . $family($keys($i));
)
?>
<_?php
// Example to demonstrate for loop
$family = array("father" => "Mohan", "mother"=>"Sita", "son"=> "Raj", "daughter"=> "Mona");
$length = count($family);
$keys = array_keys($family);
// for loop to traverse associative array
for($i=0; $i<$length; $i++) (
echo "
". $keys($i) . " => " . $family($keys($i));
)
?>

Wynik:

Zalety macierzy asocjacyjnej w PHP

  1. Istnieją różne funkcje, które łączą dwie tablice asocjacyjne.
  2. Jest podobny do listy użytkowników, stosu, kolejki itp.
  3. Stosowane są indeksy w tablicy, które są pomocne w zapamiętywaniu danych
  4. Te indeksy są zdefiniowane przez użytkownika i można je odpowiednio zmienić.
  5. Tablice superglobalne, takie jak tablice $ _POST, $ _GET, $ _SESSION, również obsługują tablice asocjacyjne.

Sortowanie tablicy asocjacyjnej według wartości w PHP

Tablicę asocjacyjną można sortować na dwa sposoby w oparciu o klucz i wartość. Tutaj dowiemy się o sortowaniu tablicy asocjacyjnej według wartości. Istnieją dwie wbudowane funkcje php, takie jak asort () i arsort (), które są używane do sortowania tablicy asocjacyjnej według wartości w kolejności alfabetycznej.

Nauczmy się tego na przykładzie.

1. asort (): wykonuje sortowanie na tablicy asocjacyjnej według wartości w porządku rosnącym

Kod:

<_?php
// example to demonstrate asort() function on associative array by value in ascending order
$family = array("father" => "Mohan", "mother"=>"Sita", "son"=> "Raj", "daughter"=> "Mona");
print_r($family);
asort($family);
echo "
";
print_r($family);
?>

Wynik:

2. arsort (): wykonuje sortowanie na tablicy asocjacyjnej zgodnie z wartością w porządku malejącym

Kod:

<_?php
// example to demonstrate asort() function on associative array by value in descending order
$family = array("father" => "Mohan", "mother"=>"Sita", "son"=> "Raj", "daughter"=> "Mona");
echo "
Before Sort";
print_r($family);
arsort($family);
echo "
After Sort";
print_r($family);
?>

Wynik:

Sortowanie tablicy asocjacyjnej według klucza w PHP

Jako tablicę asocjacyjną można sortować według wartości w porządku rosnącym. W podobny sposób tablica asocjacyjna może być sortowana według klucza alfabetycznie zarówno w porządku rosnącym, jak i malejącym, jak pokazano w poniższym przykładzie

1. ksort (): wykonuje sortowanie na tablicy asocjacyjnej według klucza w porządku rosnącym

Kod:

<_?php
// example to demonstrate ksort() function on associative array by key in ascending order
$family = array("father" => "Mohan", "mother"=>"Sita", "son"=> "Raj", "daughter"=> "Mona");
echo "
Before Sort";
print_r($family);
ksort($family);
echo "
After Sort";
print_r($family);
?>

Wynik:

2. krsort () : wykonuje sortowanie na tablicy asocjacyjnej według klucza w kolejności malejącej

Kod:

<_?php
// example to demonstrate krsort() function on associative array by key in descending order
$family = array("father" => "Mohan", "mother"=>"Sita", "son"=> "Raj", "daughter"=> "Mona");
echo "
Before Sort";
print_r($family);
krsort($family);
echo "
After Sort";
print_r($family);
?>

Wynik:

Wniosek

Programy zaczynające się od podstawowych, takich jak składnia, tworzenie tablicy, jak przechodzić przez tablicę jest wyjaśnione. Wspomniane są także takie tematy, jak zalety tablicy asocjacyjnej i sposób sortowania na tablicy asocjacyjnej.

Polecane artykuły

Jest to przewodnik po tablicach asocjacyjnych w PHP. Tutaj omawiamy, jak utworzyć tablicę asocjacyjną, przejść macierz asocjacyjną w PHP i sortować tablice według wartości i klucza. Możesz także spojrzeć na następujący artykuł, aby dowiedzieć się więcej -

  1. Sesje w PHP
  2. Palindrom w PHP
  3. Obiekt w PHP
  4. Przeciążenie w PHP
  5. Kompletny przewodnik po sortowaniu w C # z przykładami
  6. Typy danych C ++
  7. Przeciążenie Pythona
  8. Palindrom w JavaScript
  9. Klasyfikacja dwóch typów w typie danych gałęzi