PHP – 4. lekce
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

PHP – 4. lekcePHP – 4. lekce

 
Hledat
Moderní platforma pro vytvoření vašeho nového webu – Wix.com.
Nyní už můžete mít web zdarma.
Vybavení pro Laser Game
Spuštěn Filmový magazín

PHP – 4. lekce

Google       Google       22. 6. 2005       31 320×

Minule jsme si povídali o řídicích strukturách a také jsme již probrali příkaz if. Dnes se podíváme na příkazy while, for a foreach.

Reklama
Reklama

Dnes se zase posuneme o kousek dále a objasníme si další řídicí struktury, které můžeme používat.

Příkaz while

Pro příkaz while po překladu do češtiny zjistíme, že se jedná o příkaz když.



Podmínka uvedená v závorce se provede, pokud její hodnota bude TRUE. Když bude hodnota FALSE, neprovede se nic.

Zde máme jednoduchý příklad použití:



V naší ukázce jsme proměnné $i přiřadili hodnotu 1 a stanovili podmínku. Když bude tato proměnná menší nebo rovna 10, zobrazíme tuto proměnnou a následně ji zvětšíme o 1.

Využití příkazu while je idealní pro zobrazování varovných hlášek při špatném odeslání formuláře nebo něčeho podobného.

Dalším užitečným příkazem pro nás bude příkaz for.

Příkaz for



První výraz (expr1) je ohodnocen (proveden) jednou, bezpodmínečně, na začátku cyklu. Na začátku každé iterace je ohodnocen výraz expr2. Pokud má hodnotu TRUE, cyklus pokračuje a zpracovává se kód uvnitř cyklu. Je-li naopak jeho hodnota FALSE, provádění cyklu končí. Na konci každé iterace se ohodnotí (provede) výraz expr3.

Každý z výrazů může být prázdný. Prázdný výraz expr2 znamená, že cyklus bude probíhat nekonečně dlouho (PHP, stejně jako C, implicitně předpokládá hodnotu TRUE). To nemusí být tak bez užitku, jak si můžete myslet. Často můžete totiž chtít ukončit cyklus pomocí podmíněného příkazu break (ale o tom jindy), namísto použití pravdivostního výrazu v příkazu cyklu for.

Klasický příklad:


0;$i--):
echo $i;
endfor;
//i toto funguje
for ($i=0;$i<10;$i++):
if($i==5):
echo "Prave jsme dosahli pozadovane hodnoty ".$i;
else:
echo $i;
endif;
endfor;
//stejne tak se to da zapsat i takto
for ($i=0;$i<10;$i++)
{
 if($i==5){
  echo "Prave jsme dosahli pozadovane hodnoty ".$i;
 }
 else{
  echo $i;
 }
}
?>

Od verze PHP 4 máme k dispozici i příkaz foreach.

Příkaz foreach

PHP 4 (ne PHP 3) zahrnuje příkaz foreach, podobně jako Perl a různé další jazyky. To poskytuje snadný způsob k iteraci přes pole. Existují dvě syntaxe. Ta druhá je menším, avšak užitečným rozšířením té první:


 $value) statement
?>

První forma traverzuje pole dané výrazem array_expression. V každé iteraci je hodnota aktuálního elementu přiřazena do $value a vnitřní ukazatel na pole je zvýšen o jednotku (tzn. v příští iteraci budete hledět na následující element).

Druhá forma dělá totéž, kromě toho, že aktuální klíč elementu bude v každé iteraci přiřazen do proměnné $key.

Poznámka: Když foreach začne provádění první iterace, je vnitřní ukazatel automaticky nastaven na první element pole. To znamená, že před foreach nemusíte volat reset(). Uvědomte si také, že foreach pracuje na kopii specifikovaného pole, nikoli na poli samotném, a proto se změny na vráceném elementu na původním poli neprojeví.

foreach nepodporuje možnost potlačit chybová hlášení použitím @.

Můžete si všimnout, že následující příklady jsou funkčně totožné:


\n";
}
//nebo
foreach ($arr as $value) {
    echo "Hodnota: $value
\n"; } ?>

Následující příklady jsou rovněž funkčně totožné:


\n";
}
//nebo
foreach ($arr as $key => $value) {
    echo "Klíč: $key; Hodnota: $value
\n"; } ?>

Další příklady demonstrující použítí:


 $v.\n";
    $i++;
}
/* foreach příklad 2: vícerozměrná pole */

$a[0][0] = "a";
$a[0][1] = "b";
$a[1][0] = "y";
$a[1][1] = "z";

foreach($a as $v1) {
    foreach ($v1 as $v2) {
        print "$v2\n";
    }
}
?>

Samozřejmě se dá používat i kombinace foreach a endforeach.

Úkol: Nechám vám volnou ruku. Vytvořte mi nějaký skript, kde použijete veškeré příkazy z této lekce.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Tomáš VinduškaEx-programátor a admin, programuje v PHP a MySQL.
Web    

Nové články

Reklama
Reklama
Obrázek ke článku NopCommerce – datová vrstva a přístup k datům – 2. díl

NopCommerce – datová vrstva a přístup k datům – 2. díl

V minulém článku jsme si představili platformu NopCommerce z globálního pohledu. V dnešním díle se již zaměříme na konkrétní část systému, a to datovou vrstvu. Představíme si základní stavební kameny systému v podobě doménových objektů. Ukážeme si, jakým způsobem rozšířit doménové objekty a jakým způsobem přistupuje NopCommerce k nastavení systému a modulů.

Obrázek ke článku Seznamte se s open source platformou NopCommerce – 1. díl

Seznamte se s open source platformou NopCommerce – 1. díl

Hledáte e-commerce řešení, které si dokážete přizpůsobit podle vašich požadavků? Chcete čistý a srozumitelný kód, se kterým bude radost pracovat? Prozkoumejte s námi možnosti open source projektu NopCommerce. Seriál programování pod NopCommerce vám pomůže překonat první kroky nejistoty a úspěšně zvládnout vývoj pod platformou NopCommerce.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý