1 / 13

Proměnná typu "pole"

Proměnná typu "pole". Mezi proměnné typu "pole" patří všechny superglobální proměnné. To je speciální struktura, která může v jedné proměnné obsahovat sadu hodnot. Pole má prvky - každý prvek má: index nebo klíč hodnotu. Proměnná typu "pole".

Download Presentation

Proměnná typu "pole"

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Proměnná typu "pole" • Mezi proměnné typu "pole" patří všechny superglobální proměnné. • To je speciální struktura, která může v jedné proměnné obsahovat sadu hodnot. • Pole má prvky - každý prvek má: • index nebo klíč • hodnotu.

  2. Proměnná typu "pole" • Pole si můžete představit např. takto: Na škole máte tři obory. Z těchto oborů můžete udělat v PHP pole například tak, že jako index bude sloužit pořadí oboru. <?$obor[1]="Mechanizace a služby";$obor[2]="Veterinářství"; $obor[3]="Zahradnictví"; ?>

  3. Proměnná typu "pole" • Vznikla proměnná $obor (pole), která obsahuje tři prvky , z nichž každý má svůj index (například trojku) a hodnotu (takže Zahradnictví). • Z tohoto příkladu vidíte, že pole se v PHP zapisují jako každá jiná proměnná, pouze za názvem mají v hranatých závorkách index. • Toto pole je tzv. indexované.

  4. Asociativní "pole" • Někdy může ale být šikovnější rozlišit od sebe prvky pole řetězcem, čímž vznikne tzv. asociativní pole. <?$obor["Mechanizace a služby"]=MEC; $obor["Veterinářství"]=VET; $obor["Zahradnictví"]=ZAH; ?> • Obecně může být asociativní pole užitečné v případě, kdy budete chtít rozlišovat prvky podle něčeho jiného než podle čísel.

  5. Inicializace "pole" • Pole v programu samozřejmě nevznikne samo od sebe. Můžete jej nastavit tak, že jeho prvkům přiřadíte postupně hodnoty. • Index pole také můžete vynechat a PHP jej dosadí za vás. • Další možnost je použít PHP funkci array, která provede totéž, ale je to mnohem kratší. <?$obor[]="MEC";$obor[]="VET"; $obor[]="ZAH"; ?>

  6. Inicializace "pole" pomocí funkce array <? $obor=Array("MEC", "VET", "ZAH"); ?> • Je tu nicméně jeden problém. PHP standardně čísluje pole od nuly, ne od jedničky.

  7. Inicializace "pole" s nastavením číslováním Číslování indexu lze nastavit i ručně. <?$obor[1]="MEC"; $obor[]="VET"; $obor[]="ZAH"; ?> <? $obor=Array(1=>"MEC", "VET", "ZAH"); ?>

  8. K čemu se "pole" používají • Pole mohou: • sloužit jako seznamy • simulovat slovníky • fungovat jako kolekce prvků • pracovat jako zásobníky nebo fronty • představovat stromové struktury (prvkem pole totiž může být pole) • Rozsáhlá pole mohou zabírat extrémně mnoho systémových zdrojů, zejména operační paměti.

  9. Příklad • Z definovaného pole vypíše první a poslední záznam <?$obor[]="MEC"; $obor[]="VET"; $obor[]="ZAH"; echo$obor[0]; echo "<br />"; echo$obor[2]; ?>

  10. Příklad • Vytvořte pole s deseti jmény • Na obrazovku nechte zobrazit všechny liché záznamy (vedle sebe oddělené čárkou) • Na další řádek nechte zobrazit všechny sudé záznamy (vedle sebe oddělené čárkou)

  11. Řešení <? $fronta=Array(1=>"Petr", "Pavel", "Maruška" , "Eva", "Roman", "Jana", "Dana" , "Martin", "Kamil", "Ondřej"); echo$fronta[1].", ". $fronta[3].", ". $fronta[5].", ". $fronta[7].", ". $fronta[9]; echo "<br />"; echo$fronta[2].", ". $fronta[4].", ". $fronta[6].", ". $fronta[8].", ". $fronta[10]; ?>

  12. Otázky k opakování • Jaké prvky má proměnná typu pole? • Jaké typy polí znáte? • Jak se nazývá funkce pro inicializace pole? • K jakým účelům se pole používají?

  13. Použité zdroje • BLÁBOLIL, R. Informační a komunikační technologie. 3. rozšířené vydání. České Budějovice: KOPP, 2011. str. 407 Použité obrázky: • Vlastní

More Related