PHP Array: assosiatiivinen, moniulotteinen
⚡ Älykäs yhteenveto
PHP-taulukot tallentavat useita toisiinsa liittyviä arvoja yhden muuttujan sisään, mikä helpottaa toisiinsa liittyvien tietojen ryhmittelyä ja käsittelyä. Tämä ohje kattaa numeeriset, assosiatiiviset ja moniulotteiset taulukot, taulukoiden vertailuoperaattorit ja ydinfunktiot, kuten count, sort, ksort ja asort.

Mikä on PHP Array?
PHP-taulukko on muuttuja, joka tallentaa useamman kuin yhden aiheeseen liittyvän datan yhteen muuttujaan.
Ajattele sarjaa suklaarasiana, jonka sisällä on aukkoja.
Laatikko edustaa itse taulukkoa, kun taas suklaata sisältävät välilyönnit edustavat taulukkoon tallennettuja arvoja.
Alla olevat esimerkit havainnollistavat, miten tämä toimii.
Numeeriset taulukot
Numeeriset taulukot käyttävät numeroita avainnäppäiminä.
Pääsyavain on viittaus taulukkomuuttujan muistipaikkaan.
Avainta käytetään aina, kun haluamme lukea taulukon alkion tai antaa sille uuden arvon.
Alla on syntaksi numeerisen taulukon luomiseksi PHP:ssä.
Esimerkki taulukosta
<?php $variable_name[n] = value; ?>
Or
<?php
$variable_name = array(n => value, ...);
?>
TÄSSÄ,
- "$muuttujan_nimi…" on muuttujan nimi
- "[n]" on elementin pääsyindeksinumero
- "arvo" on taulukkoelementille määritetty arvo.
Katsotaanpa nyt esimerkkiä numeerisesta taulukosta.
Oletetaan, että meillä on 5 elokuvaa, jotka haluamme tallentaa taulukkomuuttujiin.
Voimme käyttää alla olevaa esimerkkiä tehdäksesi sen.
<?php $movie[0] = 'Shaolin Monk'; $movie[1] = 'Drunken Master'; $movie[2] = 'American Ninja'; $movie[3] = 'Once upon a time in China'; $movie[4] = 'Replacement Killers'; ?>
Täällä
Jokaiselle elokuvalle annetaan indeksinumero, jota käytetään sen arvon hakemiseen tai muokkaamiseen. Tarkkaile seuraavaa koodia.
<?php $movie[0]="Shaolin Monk"; $movie[1]="Drunken Master"; $movie[2]="American Ninja"; $movie[3]="Once upon a time in China"; $movie[4]="Replacement Killers"; echo $movie[3]; $movie[3] = " Eastern Condors"; echo $movie[3]; ?>
lähtö:
Once upon a time in China Eastern Condors
Kuten yllä olevista esimerkeistä näet, PHP:n taulukoiden käyttäminen useiden samanluonteisten arvojen käsittelyssä on erittäin helppoa ja joustavaa.
Vaihtoehtoisesti yllä olevat taulukkomuuttujat voidaan luoda myös käyttämällä seuraavaa koodia.
<?php $movie = array(0 => "Shaolin Monk", 1 => "Drunken Master", 2 => "American Ninja", 3 => "Once upon a time in China", 4 => "Replacement Killers" ); echo $movie[4]; ?>
lähtö:
Replacement Killers
PHP-assosiatiivinen array
Assosiatiiviset taulukot eroavat numeerisista taulukoista siinä, että assosiatiivisissa taulukoissa käytetään kuvaavia nimiä tunnisteavaimille.
Alla on syntaksi assosiatiivisen taulukon luomiseksi PHP:ssä.
<?php $variable_name['key_name'] = value; $variable_name = array('keyname' => value); ?>
TÄSSÄ,
- "$muuttujan_nimi…" on muuttujan nimi
- ”['key_name']” on elementin käyttöavain
- "arvo" on taulukkoelementille määritetty arvo.
Oletetaan, että meillä on ryhmä henkilöitä ja haluamme määrittää kunkin henkilön sukupuolen heidän nimiensä yhteyteen.
Voimme käyttää siihen assosiatiivista taulukkoa. Alla oleva koodi auttaa meitä siinä.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); print_r($persons); echo ""; echo "Mary is a " . $persons["Mary"]; ?>
TÄSSÄ,
lähtö:
Array ( [Mary] => Female [John] => Male [Mirriam] => Female ) Mary is a Female
Assosiatiiviset taulukot ovat myös erittäin hyödyllisiä haettaessa tietoja tietokannasta.
Kenttien nimiä käytetään id-avaimina.
PHP Moniulotteiset taulukot
Nämä ovat taulukoita, jotka sisältävät muita sisäkkäisiä taulukoita.
Moniulotteisten taulukoiden etuna on, että niiden avulla voimme ryhmitellä toisiinsa liittyviä tietoja.
Tarkastellaan nyt käytännön esimerkkiä, joka toteuttaa PHP:llä moniulotteisen taulukon.
Alla olevassa taulukossa on luettelo elokuvista luokittain.
| Elokuvan nimi | Luokka |
|---|---|
| Pink Panther | Komedia |
| John Englanti | Komedia |
| Olla sitkeähenkinen | Toiminta |
| Expendables | Toiminta |
| Taru sormusten herrasta | Eeppinen |
| Romeo ja Juulia | romanssi |
| Älä näe pahaa älä kuule pahaa | Komedia |
Yllä olevat tiedot voidaan esittää moniulotteisena taulukkona. Alla oleva koodi näyttää toteutuksen.
<?php $movies = array( "comedy" => array("Pink Panther", "John English", "See no evil hear no evil"), "action" => array("Die Hard", "Expendables"), "epic" => array("The Lord of the rings"), "Romance" => array("Romeo and Juliet") ); print_r($movies); ?>
TÄSSÄ,
lähtö:
Array ( [comedy] => Array ( [0] => Pink Panther [1] => John English [2] => See no evil hear no evil ) [action] => Array ( [0] => Die Hard [1] => Expendables ) [epic] => Array ( [0] => The Lord of the rings ) [Romance] => Array ( [0] => Romeo and Juliet ) )
Toinen tapa määritellä sama taulukko on seuraava.
<?php $film = array( "comedy" => array( 0 => "Pink Panther", 1 => "John English", 2 => "See no evil hear no evil" ), "action" => array ( 0 => "Die Hard", 1 => "Expendables" ), "epic" => array ( 0 => "The Lord of the rings" ), "Romance" => array ( 0 => "Romeo and Juliet" ) ); echo $film["comedy"][0]; ?>
lähtö:
Pink Panther
Huomautus: elokuvat-numeerinen taulukko on sisäkkäin kategoriat-assosiatiivisen taulukon sisällä.
PHP-taulukot: OperaTors
| OperaTor | Nimi | Tuotetiedot | Kuinka tehdä se | ulostulo |
|---|---|---|---|---|
| x+y | Liitto | Yhdistää elementtejä molemmista taulukoista |
<?php $x = array('id' => 1); $y = array('value' => 10); $z = $x + $y; ?> |
Taulukko([id] => 1 [arvo] => 10) |
| x == y | Yhtä suuri | Vertailee kahta taulukkoa ja palauttaa arvon true, jos ne ovat yhtä suuret |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x == $y) { echo "true"; } else { echo "false"; } ?> |
Totta tai 1 |
| x === y | identtinen | Vertaa sekä arvoja että Tietotyyppejä |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x === $y) { echo "true"; } else { echo "false"; } ?> |
Epätosi tai 0 |
| x != y, x <> y | Ei yhtä | Palauttaa arvon true, jos kaksi taulukkoa eivät ole yhtä suuret |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x != $y) { echo "true"; } else { echo "false"; } ?> |
Epätosi tai 0 |
| x !== y | Ei identtinen | Palauttaa arvon true, jos kahden taulukon arvot tai tyyppi eivät ole identtiset. |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x !== $y) { echo "true"; } else { echo "false"; } ?> |
Totta tai 1 |
PHP Array Funktiot
Laskutoiminto
count-funktiota käytetään PHP-taulukon sisältämien elementtien lukumäärän laskemiseen. Alla oleva koodi näyttää toteutuksen.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo count($lecturers); ?>
lähtö:
3
is_array-funktio
is_array-funktiota käytetään määrittämään, onko muuttuja taulukko vai ei. Katsotaanpa nyt esimerkkiä, joka toteuttaa is_array-funktion.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo is_array($lecturers); ?>
lähtö:
1
Lajitella
Tätä funktiota käytetään taulukoiden lajittelemiseen niiden arvojen mukaan.
Jos arvot ovat aakkosnumeerisia, se lajittelee ne aakkosjärjestykseen.
Jos arvot ovat numeerisia, se lajittelee ne nousevaan järjestykseen.
Se poistaa olemassa olevat käyttönäppäimet ja lisää uudet numeronäppäimet.
Tämän funktion tuloste on numeerinen taulukko.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); sort($persons); print_r($persons); ?>
lähtö:
Array ( [0] => Female [1] => Female [2] => Male )
ksort
Tätä toimintoa käytetään lajittelemaan taulukko näppäimen avulla. Seuraava esimerkki havainnollistaa sen käyttöä.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); ksort($persons); print_r($persons); ?>
lähtö:
Array ( [John] => Male [Mary] => Female [Mirriam] => Female )
lajitelma
Tämä toiminto käytetään lajittelemaan taulukko arvojen perusteella, kun taas keeping näppäimet. Seuraava esimerkki havainnollistaa sen käyttöä.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); asort($persons); print_r($persons); ?>
lähtö:
Array ( [Mary] => Female [Mirriam] => Female [John] => Male )
Miksi käyttää taulukoita?
- Taulukoiden sisältöä voidaan venyttää, jotta siihen mahtuu enemmän arvoja.
- Taulukot auttavat helposti ryhmittelemään toisiinsa liittyviä tietoja, kuten palvelimen kirjautumistietoja.
- Taulukot auttavat kirjoittamaan puhtaampaa koodia.



