<< Vkládání obsahu | P H P | Práce se soubory >>
Pole
- skupina souvisejících datových položek stejného typu (abeceda, jména žáků třídy...)
- po vytvoření přiřazení do proměnné jsou prvky pole indexovány (od nuly)
- prvky mohou být pojmenovány
- důležitý datový typ pro PHP
- využití při práci s databází MySQL
Vytvoření pole
- příkaz array("prvek0", "prvek1", "prvek2")
- každý prvek má své číslo - ten první (prvek0) má číslo nula.
1 2 3 4 5 6 7 8 9 10 | <?php $PC = array ( "skříň" , "disk" , "RAM" ); //využití funkce array() echo ( $PC [1]); //vypíše 'disk'; $firma = array (3 => "HP" , "IBM" ); //nastavení indexu echo ( $firma [4]); //vypíše 'IBM'; $student [2] = "Král" ; //postupné přiřazování prvků i s indexem(2) $student [5] = "Zelený" ; ?> |
Výpis prvků pole
- pomocí čísla (indexu)
1 | <?php echo ( $pole [cislo prvku])?> |
- pomocí jména
1 2 3 4 5 6 7 8 | <?php $lidi [ "jn" ] = "Jan Novák" ; $lidi [ "kp" ] = "Karel Petera" ; echo ( "absence: " . $pole [ "jn" ]. ", " . $pole [ "kp" ]); //absence: Jan Novák, Karel Petera $knihy = array ( "js" => "JavaScript v příkladech" , "php" => "PHP pro profesionály" ); echo ( $knihy [ "js" ]); ?> |
Procházení polem
- postupné vybrání všech prvků
- využití metody count($pole) vrací počet prvků pole
Výpis prvků indexovaného pole pomocí cyklu FOR
- lze použít jen pro indexované pole
1 2 3 4 5 6 7 | <?php $kapitola = array ( "PHP" , "CSS" , "SQL" , "XML" ); for ( $p = 0; $p < count ( $kapitola ); ++ $p ) //cyklus s řídící proměnnou { echo ( "Obsah knihy: " . $kapitola [ $p ]. "<br>" ); } ?> |
Výpis pojmenovaných prvků pomocí cyklu WHILE
- použití metod each(), list() a reset():
- reset($pole) - nastavuje ukazatel na první prvek pole
- list($index,$stav) - přiřadí prvkům číslo uloží ho jako $index a hodnotu jako proměnnou $stav
- each($pole) - zajistí zpracování všech prvků pole
1 2 3 4 5 6 7 8 9 10 11 12 | <?php $kapitola [PHP]= "Hotové" ; $kapitola [CSS]= "Rozepsané" ; $kapitola [XML]= "Hotové" ; $kapitola [SQL]= "Nezačaté" ; reset( $kapitola ); while (list( $index , $stav ) = each( $kapitola )) //cyklus se vstupní podmínkou { echo ( $index . " - " . $kapitola . " - " . $stav . "<br>" ); } ?> |
Použití metody foreach
- zjištění hodnot - foreach ($pole as $hodnota)
- zjištění indexů a hodnot - foreach ($pole as $index => $hodnota)
1 2 3 4 5 6 7 8 9 10 11 12 13 | <?php $slovnik = array (1 => array ( 'barva' , 'color' ), 2 => array ( 'domov' , 'home' ), 3 => array ( 'ryba' , 'fish' )); foreach ( $slovnik as $poradi => $cesky ) { print "#poradi : $cesky - " ; foreach ( $cesky as $anglicky ) { print "anglicky<br />" } } ?> |