<< 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.
<?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)
<?php echo($pole[cislo prvku])?>
  • pomocí jména
<?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
<?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
<?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)
<?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 />"
        }
    }
?>
RSS