Jūs esate sename manualai.lt puslapyje.
Naujasis puslapis yra v2.manualai.lt

forumas.manualai.lt

kodai.manualai.lt

dizainas.manualai.lt

idomu.manualai.lt

top

Sekite mus Facebook'e

Sekite mus Facebook'e

Vartotojo meniu

Forumo naujausi


serveriai.lt rekomendacija. Spausk ir gauk nuolaidą!
Masyvai PDF Spausdinti
Autorius: Primatas   

Masyvo tipo kintamasis gali savyje saugoti kelias reikšmes. Taip pat gali būti masyvai betkuriame masyvo elemento viduje, tada gaunasi masyvai masyvuose. Skamba galbūt ir painiai, bet viskas yra gana paprastai suvokiama.

Kas yra masyvas?

Kai dirbsite su PHP, anksčiau ar vėliau susidursite su tokia situacija, kad reikės išsaugoti kelias riekšmes tam pačiam pradiniam kintamajui.

Vietoje to, kad kurtumėte daugybę skirtingų kintamūjų, visas reikšmes galite saugoti viename masyvo tipo kintamajame.

Kiekvienas masyvo elementas turi savo ID, taigi visi elementai yra paprastai pasiekiami.

Yra trys masyvų tipai:

  • Numeruotas masyvas - masyvas su skaičiais ID vietoje
  • Asosciatyvusis masyvas - masyvas, kur ID raktas yra kažkokia priskirta reikšmė
  • Keliu lygių masyvas - masyvas savyje turinti dar vieną, ar kelis vidinius masyvus.

Numeruotas masyvas

Numeruotas masyvas ID raktažodžio vietoje naudoja paprastus skaičius nuo 0 iki kiek reikiama.

Yra keli būdai, kaip galime sukurti numeruotą masyvą.

Pirmas būdas

Šiame pavyzdyje ID reikšmė yra priskiriama automatiškai:

$vardai = array("Lukas","Gerda","Simas");

Antras būdas

Šiame pavyzdyje ID reikšmė yra priskiriama rankiniu būdu:

$vardai[0] = "Lukas";
$vardai[1] = "Gerda";
$vardai[2] = "Simas";

ID raktažodžiai, šiuo atveju skaičiai, gali būti panaudoti skripte:

<?php

$vardai[0] = "Lukas";
$vardai[1] = "Simas";

print $vardai[1] . " ir " . $vardai[0] . " yra lietuviai.";

?>

Naršyklėje matysime:

Simas ir Lukas yra lietuviai.

Asociatyvusis masyvas

Kai saugome duomenis, ne visada numeruoti ID yra patogūs.

Asociatyviajame masyve kiekvienas ID yra raktažodis ir jam būna priskiriama reikšmė.

Pavyzdys nr.1

Šiame pavyzdyje saugome žmonių amžių pagal jų vardą:

$amzius = array("Petras"=>32, "Jonas"=>30, "Kazys"=>34);

Pavyzdys nr.2

Šiame pavyzdyje, taip pat kaip pirmame, saugosime žmonių amžių pagal vardus, tiesiog parodome kitokį masyvo sukūrimo būdą:

$amzius['Petras'] = "32";
$amzius['Jonas'] = "30";
$amzius['Kazys'] = "34";

Raktažodis, kuris yra ID vietoje naudojamas kai norime ištraukti iš masyvo reikšmę:

<?php

$amzius['Petras'] = "32";
$amzius['Jonas'] = "30";
$amzius['Kazys'] = "34";

print "Petrui yra " . $amzius['Petras'] . " metai.";
?>

Auksčiau esantis kodas išves į naršyklę tokį HTML:

Petrui yra 32 metai.

Daugiamatis masyvas

Daugiamatiniame masyve, kiekvienas elementas pagrindiniame masyve gali būti ne tik paprasta reikšmė, bet taip pat dar vienu papildomu masyvu. Vidiniai masyvai taip pat gali turėti dar daugiau vidinių masyvų ir t.t.

Pavyzdys

Šiame pavyzdyje sukuriame daugiamatį masyvą su automatišku ID reikšmių priskirimu:

$seimos = array
(
"Jonaičiai"=>array
(
"Jonas",
"Janė",
"Janina"
),
"Petraičiai"=>array
(
"Petras"
),
"Pavardaičiai"=>array
(
"Vardas",
"Nickas",
"Pravardė"
)
);

Jeigu auksčiau esantį masyvą išvestume į naršyklę, gausime tokį rezultatą:

Array 
(
[Jonaičiai] => Array
(
[0] => Jonas
[1] => Janė
[2] => Janina
)
[Petraičiai] => Array
(
[0] => Petras
)
[Pavardaičiai] => Array
(
[0] => Vardas
[1] => Nickas
[2] => Pravardė
)
)

Pavyzdys nr.2

Dabar atvaizduosime reikšmes iš daugiamačio masyvo:

print "Ar " . $seimos['Jonaičiai'][2] . 
" yra iš Jonaičių šeimos?";

Šis kodas išves tokį HTML:

Ar Janina yra iš Jonaičių šeimos?

Masyvo išvedimas

Masyvą galima išvesti su komanda print_r();

Komentarai
Paieška
Fata   |2009-11-06 08:32:58
avatar Ir kaip realybeja panaudot ta daugiamatį masyvą? na ka su juo galima nuveikt.
nes nlb isivaizduoju.
primatas   |2009-11-09 13:42:39
avatar taigi idejau pavyzdi su juo kai buna daugiau duomenu, tada sudarai masyva su
vidiniais duomenu masyvais ir taip gaunas daugiamatis.

kad ir pvz puslapio
navigacija

masyvo sudetis tokia mazdaug:

Photoshop - vidinis masyvas:
pagrindai,Nuotraukų redagavimas ir t.t. o tas vidinis masyvas dar turi vidinius
masyvus su dar gilesniais meniu punktais


masyvu beda tame, kad daznai buna
zmonems sunku juos naudoti, nes nezinau, pritruksta gal vaizduotes isivaizduoti
kaip viskas vyksta, kaip duomenys issideste ir pagalvoja, ai nesamone cia
Haris   |2009-04-28 22:43:48
avatar Gera pamoka lb praverte
Tik registruoti vartotojai gali rašyti komentarus!

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 

bottom
top

Reklamos

joomla, css, html, web dizaino, photoshop, pascal forumai
  • Topai.eu - Svetainių katalogas
  • Top.Biciuliai.Net
  • Top.Ob.Lt
  • Hey.lt - Nemokamas lankytojų skaitliukas

Naujausi

Skaitomiausi


bottom

Dizainą sukūrė: Neshas ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- Privertė veikti: Primatas
parašyti administracijai
Manualai.lt 2008-2009

t http://manualai.lt/index.php?option=com_content&view;=section&layout;=blog&id;=14&Itemid;=298