E-learn.ro
Panou utilizatori
Utilizator Parola
Creeaza cont nou    Recupereaza parola
Login
Newsletter
Introdu adresa ta de email
Inscrie-te
Inchide panoul de utilizatori
Add to Google

Tutoriale PHP

Descarca toolbar

Toolbar E-learn.ro Facebook Twitter

WEB DEVELOPMENT  /  PHP  /  Introducere in PHP (24)

III. Structuri repetitive

19.05.2008
III. Structuri repetitive

In acest tutorial vom discuta amanuntit despre operatorii si structurile de control din PHP, alternative la familia de functii if-else(), dar si despre structurile repetitive.

Total vizualizari: 7717 7717 afisari   |   Comentarii  0   |   Rating   |   (3 voturi)   |   Timp necesar: 20 min 20 min   |   Nivel de cunostiinte necesar: Incepator  Incepator

Sursa:  Zend.com  
Autor:  Vikram Vaswani
Adauga la tutoriale favorit Adauga la tutoriale favorite
Pagina:
« 1 2 3 »
comenteaza printeaza

Structuri repetitive
Dupa cum si numele o sugereaza, structurile repetitive reprezinta un set de instructiuni speciale ce ofera posibilitatea de a repeta un anumit bloc de cod (numarul de repetitii poate fi specificat in clar ca numar, sau prin indeplinirea unor conditii).

Invatarea structurilor repetitive este un bun prilej de a introduce doi noi operatori ce sunt des intalniti in scripturile PHP: "incrementor"(++) si "decrementor"(--).

<?php
// definirea variabilei $total
$total = 10;
// incrementarea variabilei
$total++;
// $total este acum 11
echo $total;
?>

Deci, $total++ este echivalent cu $total = $total + 1 - operatie de incrementare. Dupa cum probabil ai anticipat, decrementarea unei variabile se face in mod similar:

<?php
// $total este 10
$total = 10;
// decrementare
$total--;
// $total este 9
echo $total;
?>

Exemple de structuri repetitive
Un prim exemplu foarte simplu de utilizare a structurilor repetitive in PHP este:

while (conditia este "true") {
    actiune !
}

In acest caz, atat timp cat conditia este satisfacuta, blocul de cod dintre acolade ("") este executat la nesfarsit. In momentul in care conditia devine "false", repetitia blocului inceteaza si se trece la executia codului ce urmeaza dupa structura repetitiva:

<html>
<head></head>
<body>
<form action="squares.php" method="POST">
Afiseaza patratul numerelor de la 1 la 
<input type="text" name="limit" size="4" maxlength="4">
<input type="submit" name="submit" value="Trimite">
</form>
</body>
</html>

Cand formularul de mai sus este transmis, scriptul PHP ce proceseaza datele introduse de utilizator trebuie sa afiseze patratul numerelor intre 1 si numarul dat.

<html>
<head></head>
<body>
<?php
// setarea variabilei 
$upperLimit = $_POST['limit'];
$lowerLimit = 1;
// afisarea patratelor pana cand $lowerLimit = $upperLimit
while ($lowerLimit <= $upperLimit) {
    echo ($lowerLimit * $lowerLimit).'&nbsp;';
    $lowerLimit++;
}
// afisare final de executie
echo 'END';
?>
</body>
</html>

Dupa cum ai observat acest script foloseste structura repetitiva "while()" si executa blocul dintre acolade de la 1 pana la o valoare mai mica sau egala decat $upperLimit. Exista si posibilitatea de a trece prin blocul dintre acolade cel putin o data folosind structura repetitiva "do-while()":

do {
    actiune!
} while (conditia este true)

Iata mai jos un exemplu pentru a intelege mai bine diferenta dintre "while()" si "do-while()":

<?php
$x = 100;
while ($x == 700) {
    echo "Executie...";
    break;
}
?>

In scriptul de mai sus, indiferent de cate ori rulezi scriptul PHP nu vei reusi sa afisezi nimic din moment ce variabila $x nu este egala cu 700. Insa, daca rulezi aceasta versiune:

<?php
$x = 100;
do {
    echo "Executie...";
    break;
} while ($x == 700);
?>

vei observa o line afisata: "Executie ...", deoarece blocul a fost rulat cel putin o data. Vom relua in cele ce urmeaza exemplul cu afisarea patratelor numerelor intre 1 si un numar introdus de utilizator:

<html>
<head></head>
<body>
<?php
// initializarea variabilei
$upperLimit = $_POST['limit'];
$lowerLimit = 1;
// afisarea patratelor 
do {
    echo ($lowerLimit * $lowerLimit).'&nbsp;';
    $lowerLimit++;
} while ($lowerLimit <= $upperLimit);
// afisare final de executie
echo ' END';
?>
</body>
</html>

Deci, constructia "do-while()" este executata o data inainte de a verifica indeplinirea conditiei din "while()".

Pagina:
« 1 2 3 »
comenteaza printeaza
Alte tutoriale PHP:
Noteaza acest tutorial
Rating tutorial
 
(3 voturi)
Pentru a nota acest tutorial, trebuie sa fii logat!
Posteaza un comentariu
Pentru a posta un comentariu, trebuie sa fii logat!
0 TOP UTILIZATORI* 0 0
Tutoriale scrise de claibornelara
claibornelara Rang utilizator claibornelara - Incepator
4335
Tutoriale scrise de mcuemica
mcuemica Rang utilizator mcuemica - Incepator
4200
Tutoriale scrise de ellarichards
ellarichards Rang utilizator ellarichards - Incepator
4185
Tutoriale scrise de kheops
kheops Rang utilizator kheops - Mediu
4084
Tutoriale scrise de emonclercheap
emonclercheap Rang utilizator emonclercheap - Incepator
4020
* Acest top reprezinta punctajele acumulate in ultimele 30 de zile.
HTML SWF PHP Lightroom Python Sony Vegas AJAX Photoshop Swift 3D RoR Word Flash XHTML Ruby on Rails Excel Action Script Illustrator StyleSheet Java Fireworks Verilog Dreamweaver Vista MySQL PSD Gimp SEO Powerpoint JSON Outlook XML Javascript Bridge CSS COREL DRAW Fotografie
Promovare:
Daca faci parte din comunitatea E-learn.ro si doresti promovarea acesteia, poti accesa pagina de promovare.
Arhiva newsletter:
Daca ai ratat un numar mai vechi, sau vrei sa revezi care au fost noutatile E-learn.ro la un moment dat, poti accesa arhiva de newslettere.
  Copyright © 2008-2013 E-LEARN.ro. Toate drepturile rezervate. Termeni si conditii.
Conceput si realizat de Neokinetics Software