Diferencia entre revisiones de «PHP Estruturas de control»

De MediaWiki
Ir a la navegación Ir a la búsqueda
Línea 99: Línea 99:
  
 
* Sintaxe:  
 
* Sintaxe:  
−
:: while (expresión) {
+
::<syntaxhighlight lang="php" enclose="div" highlight="" >
 +
while (expresión) {
 
       Sentenzas a executar;
 
       Sentenzas a executar;
−
  }
+
}
 +
</syntaxhighlight>
 +
 
  
 
: Se o while ten unha única sentenza a executar podemos poñer:
 
: Se o while ten unha única sentenza a executar podemos poñer:
−
:: while (expresión)  
+
::<syntaxhighlight lang="php" enclose="div" highlight="" >
 +
while (expresión)  
 
       Unha única sentenza;
 
       Unha única sentenza;
 +
</syntaxhighlight>
  
  
 
* Existe unha sintaxe alternativa para o anterior:
 
* Existe unha sintaxe alternativa para o anterior:
−
:: while (expresión)''':'''
+
::<syntaxhighlight lang="php" enclose="div" highlight="1,3" >
 +
while (expresión):
 
       Sentenzas a executar;
 
       Sentenzas a executar;
−
'''endwhile;'''
+
endwhile;
 +
</syntaxhighlight>
  
  
Línea 118: Línea 125:
  
 
: Vexamos un exemplo:
 
: Vexamos un exemplo:
 +
::<syntaxhighlight lang="php" enclose="div" highlight="" >
 +
<?php
 
$i = 1;
 
$i = 1;
 
while ($i <= 10) {
 
while ($i <= 10) {
Línea 124: Línea 133:
 
                   (post-incremento) */
 
                   (post-incremento) */
 
}
 
}
 +
?>
 +
</syntaxhighlight>
  
 
: Sairá como resultado os números do 1 ata o 10.
 
: Sairá como resultado os números do 1 ata o 10.
Línea 133: Línea 144:
  
 
* Sintaxe:  
 
* Sintaxe:  
−
:: do {
+
::<syntaxhighlight lang="php" enclose="div" highlight="" >
 +
do {
  
 
       Sentenzas a executar;
 
       Sentenzas a executar;
  
−
::while (expresión);
+
while (expresión);
 +
</syntaxhighlight>
 +
 
 +
* O concepto é o mesmo que no caso do bucle while. A diferenza estriba en que neste caso o grupo de sentenzas a executar <u>sempre se executarán</u> a lo menos unha vez, xa que a avaliación da expresión se fai despois de executar as sentenzas.
 +
 
 +
 
 +
: Vexamos un exemplo:
 +
::<syntaxhighlight lang="php" enclose="div" highlight="" >
 +
<?php
 +
$i = 0;
 +
do {
 +
    echo $i++;
 +
} while ($i <= 10);
 +
?>
 +
</syntaxhighlight>
 +
 
 +
: Amosará todos os números dende 0 ata o 10.
 +
 
 +
* Se facemos unha modificación a expresión do while para que sexa false na primeira iteración...
 +
::<syntaxhighlight lang="php" enclose="div" highlight="" >
 +
<?php
 +
$i = 0;
 +
do {
 +
    echo $i++;
 +
} while ($i > 10);
 +
?>
 +
</syntaxhighlight>
 +
 
 +
: Amosará o valor 0, e sairá do bucle.
 +
 
  
−
: Se o while ten unha única sentenza a executar podemos poñer:
+
== for ==
−
:: while (expresión)
 
−
      Unha única sentenza;
 
  
 +
*<u>Nota:</u> Esta información está baseada na que se atopa na [http://php.net/manual/es/control-structures.for.php web de php].
  
−
* Existe unha sintaxe alternativa para o anterior:
 
−
:: while (expresión)''':'''
 
−
      Sentenzas a executar;
 
−
'''endwhile;'''
 
  
  

Revisión del 17:22 25 oct 2016

if

  • Nota: Esta información está baseada na que se atopa na web de php.
  • O construtor if permite a execución condicional de fragmentos de código.
  • Sintaxe:
1 if (expr)
2   sentenza
Sendo expr unha expresión que pode ser avaliada como true ou false.
En caso de ser avaliada como true se executa a sentenza.

Exemplo de código:

1 <?php
2 if ($a > $b) {      // Se $a é maior que $b executa dita sentenza
3   echo "a é maior b";
4 }
5 ?>


  • Se queremos executar varias sentenzas temos que facer uso das chaves {....}. Todas as sentenzas que estean dentro das chaves será executadas.

Exemplo de código:

1 <?php
2 if ($a > $b) {
3   echo "a é maior b";
4   $b = $a;
5 }
6 ?>
  • É necesario que a condición estea entre parénteses: (expr).
  • Pódense anidar if´s de forma indefinida.

Exemplo de código:

1 <?php
2 if ($a > $b) {
3   echo "a é maior b";
4   if ($a > $c) {
5      echo "a é maior que c";
6   }
7 }
8 ?>


else

  • Nota: Esta información está baseada na que se atopa na web de php.
  • else forma parte do if e vai servir para executar un conxunto de sentenzas cando non se cumpra a condición indicada no if (cando o valor da expresión avaliada no if sexa false).

Exemplo de código:

1 <?php
2   if ($a > $b) {
3     echo "a é maior que b";
4   } else {
5     echo "a é menor ou igual que b"; 
6   }
7 ?>


elseif | else if

  • Nota: Esta información está baseada na que se atopa na web de php.
  • As dúas formas ('elsif' e 'else if') van facer o mesmo.
  • As condicións elseif van despois dun if e se avalían se a condición do if devolve false. A diferenza do else, podemos ter varios elseif un despois doutro e se irán avaliando en orde ata que un deles se avalía como true. Nese intre executarase o seu código e non se avaliará ningún elseif nin else que haia a continuación.


Exemplo de código:

1 <?php
2   if ($a > $b) {
3     echo "a é maior que b";
4   } elseif ($a == $b) {
5     echo "a é igual a b";
6   } else {
7     echo "a é menor que b";
8   }
9 ?>


while

  • Nota: Esta información está baseada na que se atopa na web de php.
  • Sintaxe:
while (expresión) {
      Sentenzas a executar;
}


Se o while ten unha única sentenza a executar podemos poñer:
while (expresión) 
      Unha única sentenza;


  • Existe unha sintaxe alternativa para o anterior:
while (expresión):
      Sentenzas a executar;
endwhile;


  • O que fai while é executar as sentenzas que se atopan dentro das chaves ata que a expresión devolva false.
Fixarse como primeiro se avalía a expresión e se é certa (devolve true) se executan as sentenzas. Se a primeira vez vale false nunca vai entrar a executar as sentenzas.
Vexamos un exemplo:
<?php
$i = 1;
while ($i <= 10) {
    echo $i++;  /* o valor presentado sería
                   $i antes do incremento
                   (post-incremento) */
}
?>
Sairá como resultado os números do 1 ata o 10.


do-while

  • Nota: Esta información está baseada na que se atopa na web de php.
  • Sintaxe:
do {

      Sentenzas a executar;

while (expresión);
  • O concepto é o mesmo que no caso do bucle while. A diferenza estriba en que neste caso o grupo de sentenzas a executar sempre se executarán a lo menos unha vez, xa que a avaliación da expresión se fai despois de executar as sentenzas.


Vexamos un exemplo:
<?php
$i = 0;
do {
    echo $i++;
} while ($i <= 10);
?>
Amosará todos os números dende 0 ata o 10.
  • Se facemos unha modificación a expresión do while para que sexa false na primeira iteración...
<?php
$i = 0;
do {
    echo $i++;
} while ($i > 10);
?>
Amosará o valor 0, e sairá do bucle.


for

  • Nota: Esta información está baseada na que se atopa na web de php.




-- Ángel D. Fernández González -- (2016).