Ejemplo graficó de como funciona
Continue
Break
Introducción
¿Ya conoces los fundamentos de PHP?
Arreglos
¿Qué son los arreglos?
Arreglos asociativos
Manipulando arreglos
Reto: escuela de michis
Condicionales
Aprende a tomar decisiones con if y else
Cómo organizar tu código con switch
Reto: ¿puedo retirar mis donaciones de Twitch?
Bucles
Ciclo while
¿Do... While?
Ciclo for
Ciclo foreach
Reto: ¿cuántos caminos hay para llegar al mismo punto?
Funciones
Aprende a reutilizar tu código: funciones
Parámetros en las funciones
Profundicemos en los parámetros
Uso de return
Operador de nave espacial
¡Expande tu arsenal de funciones!
Reto: completa el código
Proyecto: juego del ahorcado con PHP
¡Hagamos un juego con PHP!
Validando las letras de los usuarios
Terminando de programar el juego
Bonus: HTML con esteroides
Cómo interactúa PHP con HTML
Próximos pasos
Toma el Curso Práctico de PHP
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Aportes 22
Preguntas 2
Ejemplo graficó de como funciona
Continue
Break
En lo personal me parece que foreach está bastante bueno para hacer búsquedas secuenciales. Suponiendo que la lista de cafés es muy larga podríamos programar un buscador sencillo algo así:
<?php
$cafes=array(
"Capuccino"=>50,
"Latte"=>45,
"Americano"=>40,
"Te chai"=>45
);
echo "\n\t Lista de cafés y precios:";
foreach($cafes as $tipo => $costo){
echo "\n\t El café $tipo cuesta: $$costo";
}
$cafe=readline("\nEscribe un cafe para buscarlo: ");
foreach($cafes as $tipo => $costo){
if($tipo == $cafe){
echo "\n\t Café tipo: $tipo encontrado";
echo "\n\t Costo: $$costo";
break;
}
}
echo "\n\n";
?>
Espero haber ayudado, saludos!
El ciclo foreach es un arreglo inteligente que se usa especialmente para recorrer arreglos, no importa cuantos elementos tenga, los va a recorrer todos.
Este ciclo lo he visto en Javascript y es bueno saber que en php también lo tenemos disponible. Cambia muy poco su sintaxis y el hecho de que nos pueda obtener la clave y el valor lo hace muy completo para cualquier implementación.
Comparto mi apunte de la clase probando ambas sintaxis en un arreglo normal y un arreglo asociativo.
.
como tienda de cafes no seria una cafeteria?
Hice un poca mas compleja la condicion:
<?php
$tiendita_de_cafes = array(
"Americano" => 20,
"Latte" => 25,
"Recalentado" => 10,
"Capuccino" => 27.5,
"Mocca" => 24
);
foreach ($tiendita_de_cafes as $cafe => $price){
if ($cafe != "Recalentado") {
echo "El cafe $cafe es muy rico!!"."<br>";
}else {
echo "El cafe $cafe no es muy agradable :c. <br>";
}
}
Uno de mis cicloss favoritos! Te facilita mucho el trabajo!
En general, las estructuras de control que mendionó el profesor para recorrer arreglos no secuenciales, pueden ser usadas en cualquier tipo de arreglos. Sin embargo el caso contrario no siempre es cierto. Es decir, los comandos while y for no siempre pueden ser usados por si solos si no se conocen de antemano los índices o si los mismos no son secuenciales.
$array = [
[
"nombre" => "Fidel",
"edad" => 34,
"hobbie" => "programar"
],
[
"nombre" => "Ivon",
"edad" => 33,
"hobbie" => "comprar protector solar"
]
];
foreach ($array as $value) {
print_r($value['nombre'] . ' tiene ' . $value['edad'] . ' y le gusta ' . $value['hobbie'] . "\n");
};
Hice unos apuntes para comprender fácilmente las estructuras de control condicionales y bucles, con ayuda de diagramas de flujo.
Estructuras de control
Profee, yo tambien quiero la taza de PLATZI 😦
<?php
echo "Listas de Cervecitas Frias <br>";
$cervezas = array(
"Brahma" => 350,
"Quilmes" => 380,
"Golden" => 400,
"Heiniken" => 500
);
foreach($cervezas as $chela => $valor) {
echo "esta bebida $chela, cuestan $$valor pesos <br>";
}
//Aplicamos el break
echo "lista de comidas <br>";
$gustoso = array(
"lomos" => 450,
"empanadas" => 600,
"pizzas" => 550,
"burguer" => 390,
"papa fritas" => 200
);
foreach($gustoso as $comidas => $costo) {
echo "tenemos en stock estas comidas: $comidas, y cuestan $$costo pesos <br>";
if($comidas == "pizzas") {
echo "econtramos la pizza <br><br>";
break;
}
}
//Continue
echo "lista de bebidas <br>";
$gaseosas = array(
"Coca-Cola" => 300,
"Pepsi" => 250,
"Manaos" => 200,
"Secco" => 180,
"Cabalgata" => 100
);
foreach($gaseosas as $bebidas => $value) {
if($bebidas == "Manaos" || $bebidas == "Cabalgata") {
continue;
}
echo "solo tengo en stock esta gaseosa: $bebidas y cuestan $$value pesos <br>";
}
$tiendaCafes = [
"Mocca" => 30,
"Latte" => 20,
"Capuccino" => 30,
"Recalentado" => 10,
"Americano" => 23.5,
];
//NombreArreglo //Llave //Valor
foreach ($tiendaCafes as $Cafes => $Precio) {
echo "El cafe $Cafes tiene un precio de: $Precio";
echo "<br>";
}
echo "<br>";
foreach ($tiendaCafes as $Cafes => $Precio){ //Estoy buscando un cafe de $30
if ($Precio == 30){
echo "Tenemos un cafe llamado $Cafes con un precio de $Precio";
echo "<br>";
}
}
$tienda = array(
“Americano” => 20,
“Latte” => 30,
“Capuccino” => 35
);
foreach ($tienda as $cafe => $pr){
if($cafe == "Latte"){
echo "-Ese $cafe quiero!! \n-OK. El precio es: $pr \n";
break;
}
}
Excelente clase por fin pude entender el Foreach. Muchas gracias
Podriamos decir que contrinue es para solo omitiri ciertos valores en un arreglo pero si quieres encontrar solo un valor podemos usar break
Hoy aprendimos a usar como usar continue y break…genial
$tienda_de_cafes = array (
“Americano” => 20,
“Latte” => 25,
“Capuccino” => 27.5,
“Mocca” => 24
);
$busc = readline("Ponga el café sobre el que quiera saber el precio: ");
foreach ($tienda_de_cafes as $cafe => $price) {
if($cafe == $busc) {
echo "El valor del café $cafe, es: $$price USD\n";
break;
}
};
echo “\n”;
$tienda_de_cafes = array (
“Americano” => 20,
“Latte” => 25,
“Capuccino” => 27.5,
“Mocca” => 24
);
foreach ($tienda_de_cafes as $cafe => $price) {
if($cafe == "Latte") {
echo "El valor del café $cafe, es: $$price USD\n";
break;
}
};
echo “\n”;
Me gustaron estas definiciones.
Están en la documentación de PHP que nos comparte el profe.
.
break
Finaliza la ejecución del bucle o switch en curso.
.
continue
Salta el resto de la iteración actual del bucle y continua la ejecución en la evaluación de la condición, para luego comenzar la siguiente iteración.
Hay que tener cuidado con los decimales, por costumbre en Chile los decimales se separan con una coma “,” y los miles por puntos.
Por lo tanto al declarar el Capuccino con una coma el resultado cambia drasticamente.
<?php
$tiendita_de_cafes = array(
"Americano" => 20,
"Latte" => 25,
"Capuccino" => 27,5,
"Mocca" => 24
);
foreach($tiendita_de_cafes as $price){
echo "El café en cuestión tiene un valor $$price USD \n";
}
Resultado:
El café en cuestión tiene un valor $20 USD
El café en cuestión tiene un valor $25 USD
El café en cuestión tiene un valor $27 USD
El café en cuestión tiene un valor $5 USD
El café en cuestión tiene un valor $24 USD
?>```
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?
o inicia sesión.