PHP Array: assosiatiivinen, moniulotteinen
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 taulukoihin tallennettuja arvoja.
Alla oleva kaavio havainnollistaa yllä olevaa syntaksia.
Numeeriset taulukot
Numeeriset taulukot käyttävät numeroa pääsyavaimina.
Pääsyavain on viittaus taulukkomuuttujan muistipaikkaan.
Pääsyavainta käytetään aina, kun haluamme lukea tai määrittää uuden arvon taulukkoelementille.
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. Huomioi seuraava koodi -
<?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
Assosiatiivinen taulukko eroaa numeerisesta taulukosta siinä mielessä, että assosiatiiviset taulukot käyttävät kuvailevia nimiä id-avaimille.
Alla on syntaksi assosiatiivisen taulukon luomiseen php:ssä.
<?php $variable_name['key_name'] = value; $variable_name = array('keyname' => value); ?>
TÄSSÄ,
- "$muuttujan_nimi…" on muuttujan nimi
- "['key_name']" on elementin pääsyindeksinumero
- "arvo" on taulukkoelementille määritetty arvo.
Oletetaan, että meillä on ryhmä henkilöitä, ja haluamme määrittää jokaisen henkilön sukupuolen heidän nimeensä.
Voimme käyttää assosiatiivista taulukkoa tähän. Alla oleva koodi auttaa meitä tekemään sen.
<?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.
Katsotaanpa nyt käytännön esimerkkiä, joka toteuttaa php:n 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äärittää 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: elokuvien numeerinen matriisi on sijoitettu kategorioiden assosiatiivisen taulukon sisään
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 | Vertaa kahta taulukkoa, jos ne ovat yhtä suuret, ja palauttaa tosi, jos kyllä. |
<?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ä |
<?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 |
<?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 laskemaan php-taulukon sisältämien elementtien lukumäärä. 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 jono vai ei. Katsotaanpa nyt esimerkkiä, joka toteuttaa is_array-funktiot.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo is_array($lecturers); ?>
lähtö:
1
Lajitella
Tätä funktiota käytetään taulukoiden lajitteluun arvojen mukaan.
Jos arvot ovat aakkosnumeerisia, se lajittelee ne aakkosjärjestykseen.
Jos arvot ovat numeerisia, se lajittelee ne nousevaan järjestykseen.
Se poistaa nykyiset pääsyavaimet ja lisää uusia numeronäppäimiä.
Tämän funktion tulos 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 avulla. 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?
- Arrayiden sisältöä voidaan venyttää,
- Taulukot auttavat helposti ryhmittelemään toisiinsa liittyviä tietoja, kuten palvelimen kirjautumistiedot
- Taulukot auttavat kirjoittamaan puhtaampaa koodia.
Yhteenveto
- Taulukot ovat erikoismuuttujia, joilla on kyky tallentaa useita arvoja.
- Taulukot ovat joustavia ja niitä voidaan helposti venyttää enemmän arvoja varten
- Numeeriset taulukot käyttävät numeroita taulukon avaimina
- PHP Associative array käyttää kuvaavia nimiä taulukkoavaimille
- Moniulotteiset taulukot sisältävät muita matriiseja sisällään.
- Count-funktiota käytetään määrittämään taulukkoon tallennettujen kohteiden lukumäärä
- Is_array-funktiota käytetään määrittämään, onko muuttuja kelvollinen taulukko vai ei.
- Muita taulukkotoimintoja ovat lajittelu, kssort, lajittelu jne.