Sissejuhatus assotsiatiivsesse massiivi

Massiiv on sarnaste ja erinevate andmete tüüpide kogum. Massiiv salvestab muutujaga seotud andmed. Nende paljude muutujate arvu väärtuse loomiseks ja salvestamiseks ühte muutujasse on vaja massiive. PHP-s on kolme tüüpi massiive. Numbrimassiivid, assotsiatiivsed massiivid ja mitmemõõtmelised massiivid. Assotsiatiivne massiiv on võtme-väärtuse paari kujul, kus võti on massiivi indeks ja väärtus on massiivi element. Selles võtmes saab kasutaja määratleda. See sarnaneb numbrimassiiviga, kuid võtmed ja väärtused, mis salvestatakse võtme-väärtuse paari kujul.

Selles teemas õpime tundma PHP-s asuvat assotsiatiivset massiivi.

Süntaks

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

kus $ input on massiivi nimi, key1 on massiivi elemendi indeks ja value1 on massiivi elemendi väärtus

Kuidas luua PHP-s assotsiatiivset massiivi?

Assotsiatiivne massiiv deklareeritakse massiivi märksõna abil. Massiivi võtmeväärtus deklareeritakse noolega '=>'. Assotsiatiivse massiivi loomiseks on kaks võimalust.

Järgnev on näide

Kood:

<_?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";
?>

Kuidas PHP-st läbi viia assotsiatiivset massiivi, kasutades erinevaid meetodeid

Assotsiatiivset massiivi saab läbida kahel viisil. Üks on hariliku silmuse ja teine ​​silmuse jaoks.

Meetod nr 1

Selles näites kuulutatakse massiiv ja seda nimetatakse perekonnaks $. See massiiv on võtmeväärtuse kujul, kus võtmed on suhete nimed nagu isa, ema, poeg, tütar. Ja iga klahv hoiab suhte nime, nagu indeksi esimene väärtus Isa on Mohan, teine ​​väärtus indeksi Ema on Sita, kolmas väärtus Poeg on Raj, neljas väärtus Tütar on Mona. Selle massiivi läbimiseks kasutame otsija silmust, milles trükime mõlemad võtmed isaks, emaks, pojaks, tütreks ja väärtused massiivi Mohaniks, Sitaks, Rajiks ja Monaks.

Kood:

<_?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 '
';
)
?>

Meetod nr 2

Selles näites kasutame sama massiiviperekonda nagu eelmises näites ja liigume silmuse jaoks. Kasutame massiivi võtmeid, milleks on isa, ema, poeg ja tütar, funktsiooni array_keys. Need võtmed tagastatakse massiivi kujul. Funktsioon massiivi võtmed võtab parameetrina sisendmassiivi ja väljastab indekseeritud massiivi. Nüüd selle silmuse korramiseks kasutame silmuse jaoks ja printige klahvid ja väärtused vastavalt vajadusele.

Kood:

// 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));
)
?>

Väljund:

Assotsiatiivse massiivi eelised PHP-s

  1. Kahe assotsiatiivse massiivi ühendamiseks on erinevaid funktsioone.
  2. See sarnaneb kasutajate nimekirja, pinu, järjekorraga jne.
  3. Kasutatakse massiivi indekseid, millest on abi andmete meeldejätmisel
  4. Need indeksid on kasutaja määratletud ja neid saab vastavalt muuta.
  5. Superglobaalsed massiivid nagu $ _POST, $ _GET, $ _SESSION massiivid toetavad ka assotsiatiivseid massiive.

Assotsiatiivse massiivi sortimine väärtuse järgi PHP-s

Assotsiatiivset massiivi saab järjestada kahel viisil võtme ja väärtuse põhjal. Siit saame teada assotsiatiivse massiivi väärtuse järgi sortimise kohta. On olemas kaks sisseehitatud php-funktsiooni, näiteks asort () ja arsort (), mida kasutatakse assotsiatiivse massiivi sorteerimiseks väärtuse järgi tähestiku järjekorras.

Õppigem seda näitega.

1. asort (): viib sorteerimise assotsiatiivmassiivis vastavalt väärtusele kasvavas järjekorras

Kood:

<_?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);
?>

Väljund:

2. arsort (): teostab assotsiatiivmassiivis sorteerimise vastavalt väärtusele kahanevas järjekorras

Kood:

<_?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);
?>

Väljund:

Assotsiatiivse massiivi sortimine võtme järgi PHP-s

Kuna assotsiatiivset massiivi saab sortida väärtuse järgi kasvavas järjekorras. Sarnasel viisil saab assotsiatiivset massiivi järjestada võtme järgi tähestikulises järjekorras nii kasvavas kui kahanevas järjekorras, nagu on näidatud allpool toodud näites

1. ksort (): viib sorteerimise assotsiatiivmassiivis vastavalt võtmele kasvavas järjekorras

Kood:

<_?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);
?>

Väljund:

2. krsort () : viib assotsiatiivmassiivis sorteerimise vastavalt võtmele kahanevas järjekorras

Kood:

<_?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);
?>

Väljund:

Järeldus

Selgitatakse programme, mis algavad põhilistest, näiteks süntaks, massiivi loomine, kuidas massiivi läbida. Samuti on nimetatud selliseid teemasid nagu assotsiatiivse massiivi eelised ja kuidas assotsiatiivses massiivis sortimist teostada.

Soovitatavad artiklid

See on juhend Associative Array kohta PHP-s. Siin arutatakse, kuidas luua assotsiatiivset massiivi, integreerida assotsieerunud massiivi PHP-s ning sortida massiive väärtuse ja võtme järgi. Lisateabe saamiseks võite vaadata ka järgmist artiklit -

  1. Seansid PHP-s
  2. Palindroom PHP-s
  3. Objekt PHP-s
  4. Ülekoormamine PHP-s
  5. Täielik juhend C # -s sortimise kohta koos näidetega
  6. C ++ andmetüübid
  7. Pythoni ülekoormamine
  8. Palindroom JavaScriptis
  9. Kahe tüübi klassifitseerimine tarude andmetüübis

Kategooria: