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

PHP – 4. lekcePHP – 4. lekce

 

PHP – 4. lekce

Google       Google       22. 6. 2005       30 646×

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

Obrázek ke článku RAD Studio a Windows Store

RAD Studio a Windows Store

RAD Studio je první vývojové prostředí se zabudovanou podporou balení aplikací typu Win32 a Win64 pro jejich umístění a šíření prostřednictvím Windows 10 Store.

Reklama
Reklama
Obrázek ke článku Testujte na 2 400+ Android a iOS zařízení

Testujte na 2 400+ Android a iOS zařízení

V dnešní době, kdy většina softwaru pro mobilní aplikace je tvořena a distribuována průběžně, mnohdy do celého světa je třeba zajistit také průběžnou automatizaci testování mobilního softwaru. V případě mobilních aplikací pro Android a iOS začíná být problém, jak testovat na obrovském množství kombinací HW variant, rozměrů, edic operačních systémů různých výrobců v různých částech světa na reálných zařízení. Simulátory a emulátory nejsou většinou to pravé. Pokud již testuji, jak si udělat vlastní beta distribuci opravdovým reálným testerům napříč platformami?

Obrázek ke článku Funkcie main vo Windows API

Funkcie main vo Windows API

V tretej časti seriálu o Windows API budeme hovoriť o funkčných prototypoch main. Funkčný prototyp je tvorený názvom funkcie a typom signatúry, pričom sa vynecháva telo funkcie. 

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý