← PHP EspañolChapter 04 of 13

Control de Flujo

## Objetivos de Aprendizaje - Dominar las declaraciones if, else if, else - Comprender las declaraciones switch - Aprender los bucles for, foreach, while, do-while - Usar break, continue y la expresión match ## Declaración if ### if Básico ```php = 18) { echo "Adult"; } ?> ``` ### if-else ```php = 18) { echo "Adult"; } else { echo "Minor"; } ?> ``` ### if-else if-else ```php = 90) { $grade = "A"; } elseif ($score >= 80) { $grade = "B"; } elseif ($score >= 70) { $grade = "C"; } elseif ($score >= 60) { $grade = "D"; } else { $grade = "F"; } echo "Grade: " . $grade; ?> ``` ### Sintaxis Alternativa ```php = 18): echo "Adult"; elseif ($age >= 13): echo "Teenager"; else: echo "Child"; endif; ?> ``` ## Operador Ternario ```php = 18) ? "Adult" : "Minor"; echo $status; // Adult // With else-if (avoid nesting) $grade = ($score >= 90) ? "A" : ($score >= 80) ? "B" : ($score >= 70) ? "C" : "F"; ?> ``` ### Fusión de Null como Alternativa al Ternario ```php ``` ## Declaración switch ### switch Básico ```php ``` ### switch con Múltiples Valores ```php ``` ### switch sin break (Caída a través) ```php ``` ### Sintaxis Alternativa de Switch ```php ``` ## Expresión match (PHP 8) ### match Básico ```php "Monday", 2 => "Tuesday", 3 => "Wednesday", 4 => "Thursday", 5 => "Friday", 6 => "Saturday", 7 => "Sunday", }; echo $dayName; ?> ``` ### Múltiples Valores ```php 31, 4, 6, 9, 11 => 30, 2 => 28, }; echo "Days: " . $days; ?> ``` ### Cláusula Default ```php "A", 80, 81, 82, 83, 84, 85, 86, 87, 88, 89 => "B", 70, 71, 72, 73, 74, 75, 76, 77, 78, 79 => "C", default => "Need improvement", }; ?> ``` ### match vs switch ```php "Match!", // Won't match "10" => "Exact match!", // This matches }; ?> ``` ## Bucle for ### for Básico ```php ``` ### Múltiples Variables de Bucle ```php ``` ### Contando hacia Atrás ```php 0; $i--) { echo $i . "\n"; // 5, 4, 3, 2, 1 } ?> ``` ### Avanzando por N ```php ``` ## Bucle foreach ### Arreglos Indexados ```php ``` ### Con Índice ```php $color) { echo "$index: $color\n"; } // 0: red // 1: green // 2: blue ?> ``` ### Arreglos Asociativos ```php "Alice", "age" => 25, "city" => "Paris" ]; foreach ($person as $key => $value) { echo "$key: $value\n"; } ?> ``` ### Por Referencia ```php ``` ## Bucle while ### while Básico ```php ``` ### while con Condición Primero ```php ``` ## Bucle do-while ### Ejecuta al Menos una Vez ```php ``` ### Ejemplo de Menú ```php ``` ## break y continue ### break - Salir del Bucle ```php ``` ### break con Nivel ```php 4) { $found = true; break 2; // Break outer loop } } } ?> ``` ### continue - Saltar Iteración ```php ``` ### continue con Nivel ```php ``` ## Bucles Anidados ### Anidamiento Básico ```php ``` ### Patrón de Triángulo ```php ``` ## Patrones Comunes ### Sumar 1 a N ```php ``` ### Encontrar en Arreglo ```php ``` ### Contar Coincidencias ```php ``` ### FizzBuzz ```php ``` ## Resumen - if/elseif/else para lógica condicional - switch para múltiples valores discretos (usa comparación laxa) - match (PHP 8+) para comparación estricta, devuelve valores - for para iteraciones conocidas - foreach para arreglos (por valor o referencia) - while para iteración basada en condición - do-while para iteración de al menos una vez - break sale del bucle; continue salta iteración - Especifica el nivel de break/continue para bucles anidados

Comments

Comments powered by Giscus

To enable comments, add your Giscus embed code here.

Learn more about Giscus →