ohjeita web-sivuston tekijälle
Taulukkomuuttuja on lista skalaarimuuttujia. Taulukkomuuttujien esitys eroaa skalaarimuuttujista siinä, että ne alkavat @-merkillä. Lauseke
@food = ("apples", "pears", "eels");
@music = ("whistle", "flute");
asettaa kolmen elementin listan muuttujan @food arvoksi ja kahden elementin listan muuttujan @music arvoksi. Taulukkoa käsitellään indeksien avulla, joiden numerointi alkaa nollasta ja indeksi sijoitetaan hakasulkeisiin ([]). Lauseke
$food[2]
palauttaa arvon eels. Huomaa että nyt käytetään @: n asemesta $: tä koska eels on skalaari.
Seuraavat lausekkeet tuottavat aivan saman tuloksen:
@moremusic = ("organ", @music, "harp");
@moremusic = ("organ", "whistle", "flute", "harp");
Kätevämpi tapa lisätä elementtejä taulukkoon on
push(@food, "eggs");
mikä lisää eggs @food-taulukon loppuun. Lisätäksesi useita arvoja taulukkoon, käytä jotakin seuraavista:
push(@food, "eggs", "lard");
push(@food, ("eggs", "lard"));push(@food, @morefood);
push-funktio palauttaa listan pituuden. Poistaaksesi listan viimeisen arvon ja palauttaaksesi sen käytä pop-funktiota.
$grub = pop(@food);
poistaa arvon eels taulukosta @food ja asettaa sen muuttujan $grub arvoksi. On myös mahdollista liittää taulukko skalaarimuuttujaan. Kuten tavallista konteksti on tärkeä:
$f = @food;
yhdistää taulukon @food koon mutta
$f = "@food";
muuttaa listan merkkijonoksi, jossa jokaisen listan kohdan välissä on välilyönti. Välilyönti voidaan muuttaa miksi tahansa muuksi merkiksi tai merkkijonoksi muuttamalla erikoismuuttujan $" arvoa.
Taulukoita voidaan myös käyttää haluttaessa liittää useita arvoja skalaarimuuttujiin:
@somefood on lista lopuista arvoista.
($a, $b) = ($c, $d); Sama kuin $a=$c; $b=$d; ($a, $b) = @food; $a ja $b taulukon @food kahdeksi ensimmäiseksi arvoksi ($a, @somefood) = @food; $a taulukon @food ensimmäiseksi arvoksi, sitten taulukko @somefood (@somefood, $a) = @food; Taulukko @somefood on taulukko @food, $a määrittelemätön
Viimeisin tapahtuu koska taulukko @somefood yrittää ottaa niin paljon arvoja taulukolta @food kuin mahdollista. Tämän vuoksi tuon kaltaisia lausekkeita kannattaa välttää. Taulukon viimeisen elementin indeksin saa selville seuraavasti:
$#food
Kaikki seuraavat tuottavat erilaisen tuloksen:
print @food; print "@food"; print @food."";
Seuraava sivu: Assosiatiiviset taulukot.
Siis en ole tähän asti ymmärtänyt tästä perlistä mitään.. mihin ja missä tätä käytetään??
25.4.2005 00:19jä mä taisin ymmärtää vielä vähemmän kuin sä!
27.10.2006 16:03häh?
11.12.2006 20:51Ööh. Tämä oli nyt vähän tämmöinen pikainen. Ei jäänyt yhtään mitään päähän.
17.3.2007 19:15hei
17.8.2008 23:58Tämähän oli ihan selvä, mutta miten tätä kieltä voi käyttää omassa web-sivustossa? Tämähän kuuluu palvelinpuolelle, eli käytetäänkö tätä jossain cgi-binissä tai vastaavassa?