Ïîìîãíè íè äà íàïðàâèì Uroci.net ïî - áîãàò! Äîáàâè óðîê
Êàòåãîðèè Äðóãè óðîöè Adobe Photoshop Adobe Illustrator Adobe Flash Adobe Fireworks DreamWeaver CSS è HTML Corel Draw Image Ready PHP
PHP
SEO CMS Microsoft Windows Microsoft Word Microsoft Excel PowerPoint Microsoft Access Microsoft Publisher Linux Visual basic JavaScript Ajax 3ds Max Maya 3D C++ Sound Forge Gimp SWiSH

PHP - ÷àñò 5 (Ðàáîòà ñ ìàñèâè)

PHP » PHP
fix3d   òðóäíîñò:    âèäÿí: 3829

Ðàáîòà ñ ìàñèâè
Âå÷å çíàåòå, ÷å ïðîìåíëèâàòà å êîíòåéíåð çà åäíà ñòîéíîñò. Ìàñèâúò îò äðóãà ñòðàíà å êîíòåéíåð çà ìíîæåñòâî ñòîéíîñòè. Òîé ñúùî òàêà ìîæå äà ñúäúðæà ìíîæåñòâî åëåìåíòè îò ðàçëè÷íè òèïîâå. Åëåìåíòèòå îò ìàñèâà ñå àäðåñèðàò èëè ìàíèïóëèðàò íà áàçàòà íà òåõíèÿ èíäåêñ. Èíäåêñúò íà åëåìåíò îò ìàñèâ îáèêíîâåíî å öÿëî ÷èñëî.
Èìà íÿêîëêî òèïà ìàñèâè â PHP. Äà ðàçãëåäàìå â ïîäðîáíîñòè ñëåäíèòå òèïîâå ìàñèâè.
Òèïîâå ìàñèâè

Ìàñèâèòå ìîãàò äà ñå êëàñèôèöèðàò íà áàçàòà íà èíäåêñèòå ñè è íà åëåìåíòèòå ñè. Ðàçëè÷íèòå òèïîâå ìàñèâè ñà

- Íîìåðèðàí ìàñèâ
- Àñîöèàòèâåí ìàñèâ
- Ìíîãîìåðåí ìàñèâ

Íîìåðèðàíè ìàñèâè
Ìàñèâèòå, êîèòî èìàò öåëî÷èñëåíè èíäåêñè, ñà èçâåñòíè ïîä èìåòî íîìåðèðàíè èëè ÷èñëîâî èíäåêñèðàíè ìàñèâè. Òåçè ìàñèâè ñå èçïîëçâàò çà ñúõðàíÿâàíå íà ñòîéíîñòè. Íàïðèìåð, ìîæåòå äà èìàòå ìàñèâ ñ èìå Students, â êîéòî âñåêè åëåìåíò äà ñúõðàíÿâà èìåòî íà ñòóäåíò.

 òîçè ìàñèâ, âñåêè åëåìåíò, ìîæå äà áúäå àäðåñèðàí ïî èíäåêñà ñè. Íàïðèìåð, Èìåòî James ìîæå äà áúäå àäðåñèðàíî îò èíäåêñ 0. Çà äà âèçóàëèçèðàòå åëåìåíòà ñ èíäåêñ 2, ìîæåòå äà èçïîëçâàòå ñëåäíèÿ ðåä:

echo "$Students [2]";


Àñîöèàòèâíè ìàñèâè
Àêî âè ñå íàëàãà äà îñúùåñòâÿâàòå äîñòúï äî åëåìåíòèòå íà äàäåí ìàñèâ ïî èìå, òîãàâà òðÿáâà äà èçïîëçâàòå íèçîâå êàòî èíäåêñ íà ìàñèâà. Ìàñèâèòå, êîèòî èçïîëçâàò íèçîâå êàòî èíäåêñè, ñå íàðè÷àò àñîöèàòèâíè ìàñèâè.
Ùå îòêðèåòå åäíà ñúùåñòâåíà ðàçëèêà ïðè ðàáîòàòà ñ íîìåðèðàíèòå è àñîöèàòèâíèòå ìàñèâè. Ïðè àñîöèàòèâíèòå ìàñèâè ìàñèâè íå ìîæåòå äà èç÷èñëèòå ñëåäâàùèÿ âàëèäåí èíäåêñ â ìàñèâà. Ìîæåòå äà ñúçäàäåòå àñîöèàòèâåí ìàñèâ ñ èìå Student_Name, êàòî ïðèñâîèòå ñòîéíîñòòà íà èíäåêñà.

$Student_Name["name1"] = "James Patt"; $Student_Name["name2"] = "John Smith"; $Student_Name["name3"] = "Susan Carter";

Ìîæåòå ñúùî òàêà äà êîíâåðòèðàòå ñúùåñòâóâàù íîìåðèðàí ìàñèâ â àñîöèàòèâåí ìàñèâ. Çà äà êîíâåðòèðàòå ñúùåñòâóâàù ìàñèâ Student â àñîöèàòèâåí ìàñèâ, íàïðàâåòå ñëåäíîòî:

$Student = array ("name1" =>"James Patt", "name2" =>"John Smith", "name3" => "Susan Carter");

Ñëåä êàòî ñòå êîíâåðòèðàëè íîìåðèðàí ìàñèâ â àñîöèàòèâåí, ìîæåòå äà èçïîëçâàòå êîìàíäàòà echo, çà äà âèçóàëèçèðàòå åëåìåíòèòå îò ìàñèâà.

echo "$Student["name3"]";

Íà åêðàíà ùå ñå ïîÿâè èìåòî Susan Carter. Ìîæåòå ñúùî òàêà äà èçïîëçâàòå ôóíêöèèòå list() è each(), çà äà îñúùåñòâèòå äîñòúï äî åëåìåíòèòå â àñîöèàòèâåí ìàñèâ. Ôóíêöèÿòà list() ñå èçïîëçâà çà ïðèñâîÿâàíå ñòîéíîñòèòå íà åëåìåíòèòå îò ìàñèâà íà ïðîìåíëèâè. À ôèíêöèÿòà each() ïîëó÷àâà ìàñèâ êàòî àðãóìåíò è âðúùà èíäåêñà è ñòîéíîñòòà íà âñåêè åëåìåíò îò ìàñèâà.

Íàïðèìåð:
$Student = array ("name1" =>"James Patt", "name2" =>"John Smith", "name3" => "Susan Carter"); list($key_name, $val) = each($Student); echo("$key_name"); echo ("$val");

Ãîðíèÿ êîä çà âñåêè åëåìåíò îò ìàñèâà ïðèñâîÿâà íà ïðîìåíëèâàòà $key_name èíäåêñà íà åëåìåíòà, à íà ïðîìåíëèâàòà $value - ñòîéíîñòòà íà åëåìåíòà. Ñëåä òîâà ñå âèçóàëèçèðàò ñòîéíîñòèòå íà ïðîìåíëèâèòå $key_name è $val. Òàêà èíäåêñèòå ùå ñà name1, name2, name3. A ñúîòâåòíèòå ñòîéíîñòè ùå ñà James Patt, John Smith è Susan Carter.

Ìíîãîìåðíè ìàñèâè
ìîæåòå äà ñúõðàíÿâàòå ðàçëè÷íè ïðîìåíëèâè, êàêòî è öåëè ìàñèâè, â äðóã ìàñèâ. Ìàñèâ, êîéòî ñúõðàíÿâà ìàñèâè êàòî ñâîè åëåìåíòè ñå íàðè÷à ìíîãîìåðåí ìàñèâ. Àêî åëåìåíòèòå íà ìàñèâ ñà äâóìåðíè ìàñèâè, òîãàâà òîé å òðèìåðåí ìàñèâ è ò.í. Âúïðåêè, ÷å òåçè ìàñèâè ìîãàò äà ñà òðèìåðíè, ÷åòèðèìåðíè è ò.í., äâóìåðíèòå ìàñèâè ñà íàé-ïîïóëÿðíè. Ïî-äîëó å äàäåí ïðèìåð çà ìíîãîìåðåí ìàñèâ.

Rool No 1 2 3
Name James Patt John Smith Susan Carter


ãîðíèÿò ìàñèâ å ïðèìåð çà äâóìåðåí ìàñèâ. Òóê ìàñèâúò Students ñúäúðæà äðóã ìàñèâ ñ èìå Roll NO.
Òúé êàòî ìàñèâúò Students èìà ìàñèâè êàòî ñâîè åëåìåíòè, Ìîæåòå äà îñúùåñòâèòå äîñòúï äî âòîðèÿ ïîäåëåìåíò íà ïúðâèÿ åëåìåíò íà ìàñèâà , êàòî èçïîëçâàòå äâà èíäåêñà, íàïðèìåð:

$Students [0][1]

Ìîæåòå äà ïîìèñëèòå çà åäíî èçîáðàæåíèå êàòî ïðèìåð çà ìàñèâ. Íàïðèìåð òðÿáâà äà âèæäàòå êîîðäèíàòèòå, äîêàòî äâèæèòå ïîêàçàëåöà íà ìèøêàòà âúðõó èçîáðàæåíèåòî.  òîçè ñëó÷àé òðÿáâà äà èçïîëçâàòå ìíîãîìåðåí ìàñèâ çà êîîðäèíàòèòå íà x è y, êàêòî å ïîêàçàíî ïî- äîëó.

Coordinates [x][y]

Íÿìà îãðàíè÷åíèå çà áðîÿ íà èçìåðåíèÿòà íà ìàñèâèòå. Îñâåí òîâà ìîæåòå äà èìçòå ðàçëè÷íè òèïîâå èçìåðåíèÿ. Íàïðèìåð, ìîæå ïúðâèÿò èíäåêñ äà å öåëî÷èñëåí, âòîðèÿò íèçîâ, òðåòèÿò- ïàê öåëî÷èñëåí è ò.í. Ìíîãîìåðíèòå ìàñèâè ñà ìíîãî ïîëåçíè ïðè ïðåäñòàâÿíåòî íà ñëîæíè ñòàòè÷åñêè äàííè.

<html>
<body>
<?php
$Student = array (
"0" => array ("name" => "James", "sex" =>"Male", "age"=>"28"),
"1" => array ("name" => "John", "sex" =>"Male", "age"=>"25"),
"2" => array ("name" => "Susan", "sex" =>"Female", "age"=>"24")
);
Print $Student [2][age];
?>
</html>
</body>

Ðåçóëòàòúò îò ãîðíàòà ïðîãðàìà å 24.


Ñòðàíèöè: 1 2 3 »

Êîìåíòàðè (1)

azerot íà 17.07 2008 â 17:42÷.
(clap) Äîñòà äîáðå íàïðàâåíî!

Ðåãèñòðèðàéòå ñå, çà äà äîáàâèòå êîìåíòàð

ðåêëàìà

© Âñè÷êè ïðàâà çàïàçåíè. 2006-2008. Created by: Site.bg
Ïðåïîðú÷âàìå: IT Íîâèíè | Êèíî è èãðè | Äèïëîìà.áã | Paparak.bg | Òóíèíã Ïîðòàë | uchenik.com | TRAVEL òóðèçúì | Ðåôåðàòè | AmAm.bg | Èäå.ëè | Êóðñîâè ðàáîòè | AnimeS-bg.com | Ôîòî Ôîðóì | Çàïîçíàíñòâà | Ìðåæà îò ïðèÿòåëè | IT Light | Spodeli.net | Ôîòî-Êóëò | IDG.BG | Teenproblem.net | Áëîã - Îáðàçîâàíèå | Fresh-BG.com | Hanovete.com | Bulfleet.com | Mythlands.com | Ohoboho.com | Êàçàíëúê.Com | News24 | Setcom.bg | Atol.bg | Elmaz.com | MobileBulgaria.com