CursosEmpresasBlogLiveConfPrecios

Ciclo foreach

Clase 12 de 25 • Curso de PHP: Arreglos, Funciones y Estructuras de Control

Clase anteriorSiguiente clase

Contenido del curso

Introducción
  • 1
    ¿Ya conoces los fundamentos de PHP?

    ¿Ya conoces los fundamentos de PHP?

    02:26
Arreglos
  • 2
    ¿Qué son los arreglos?

    ¿Qué son los arreglos?

    07:36
  • 3
    Arreglos asociativos

    Arreglos asociativos

    13:46
  • 4
    Manipulando arreglos

    Manipulando arreglos

    13:43
  • 5
    Reto: escuela de michis

    Reto: escuela de michis

    11:50
Condicionales
  • 6
    Aprende a tomar decisiones con if y else

    Aprende a tomar decisiones con if y else

    10:20
  • 7
    Cómo organizar tu código con switch

    Cómo organizar tu código con switch

    09:58
  • 8
    Reto: ¿puedo retirar mis donaciones de Twitch?

    Reto: ¿puedo retirar mis donaciones de Twitch?

    05:35
Bucles
  • 9
    Ciclo while

    Ciclo while

    11:37
  • 10
    ¿Do... While?

    ¿Do... While?

    07:08
  • 11
    Ciclo for

    Ciclo for

    10:17
  • 12
    Ciclo foreach

    Ciclo foreach

    13:57
  • 13
    Reto: ¿cuántos caminos hay para llegar al mismo punto?

    Reto: ¿cuántos caminos hay para llegar al mismo punto?

    21:13
Funciones
  • 14
    Aprende a reutilizar tu código: funciones

    Aprende a reutilizar tu código: funciones

    09:55
  • 15
    Parámetros en las funciones

    Parámetros en las funciones

    09:06
  • 16
    Profundicemos en los parámetros

    Profundicemos en los parámetros

    14:30
  • 17
    Uso de return

    Uso de return

    07:57
  • 18
    Operador de nave espacial

    Operador de nave espacial

    07:49
  • 19
    ¡Expande tu arsenal de funciones!

    ¡Expande tu arsenal de funciones!

    05:07
  • 20
    Reto: completa el código

    Reto: completa el código

    04:46
Proyecto: juego del ahorcado con PHP
  • 21
    ¡Hagamos un juego con PHP!

    ¡Hagamos un juego con PHP!

    12:01
  • 22
    Validando las letras de los usuarios

    Validando las letras de los usuarios

    10:54
  • 23
    Terminando de programar el juego

    Terminando de programar el juego

    12:21
Bonus: HTML con esteroides
  • 24
    Cómo interactúa PHP con HTML

    Cómo interactúa PHP con HTML

    08:13
Próximos pasos
  • 25
    Toma el Curso Práctico de PHP

    Toma el Curso Práctico de PHP

    02:35
    Erick Alvarez

    Erick Alvarez

    student•
    hace 4 años

    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!

      Guadalupe Monge Barale

      Guadalupe Monge Barale

      student•
      hace 4 años

      Muy bueno. Guiándome con lo tuyo hice esto

      $dias = array( "Lunes" => "Monday", "Martes" => "Tuesday", "Miércoles" => "Wednesday", "Jueves" => "Thursday", "Viernes" => "Friday", "Sábado" => "Saturday", "Domingo" => "Sunday" ); foreach($dias as $español => $ingles) { echo "El día ".$español . " en inglés se escribe ". $ingles . "\n"; } $dia_buscado=readline("\nEscribe el día de la semana que quieras saber como se escribe en inglés: "); foreach($dias as $español => $ingles){ if($dia_buscado === $español){ echo "\n\t El día $dia_buscado se escribe en inglés $ingles "; break; } } echo "\n\n";
    Joel Dominguez Merino

    Joel Dominguez Merino

    student•
    hace 3 años

    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. .

    code.png

      Joel Dominguez Merino

      Joel Dominguez Merino

      student•
      hace 3 años

      También les comparto mi apunte del uso de break y continue 😉 .

      code.png

    Henry

    Henry

    student•
    hace 4 años

    El ciclo foreach es un arreglo inteligente que se usa especialmente para recorrer arreglos, no importa cuantos elementos tenga, los va a recorrer todos.

      isaac cruz herrera

      isaac cruz herrera

      student•
      hace 3 años

      no es un arreglo, es una estructura de bucle.

    Luis Alberto Rodríguez Arellano

    Luis Alberto Rodríguez Arellano

    student•
    hace 4 años

    No sabía que el break funcionaba en el For Each, pero, ¿esto solo es en PHP o también en otros lenguajes como JavaScript?

      Jimmy Buriticá Londoño

      Jimmy Buriticá Londoño

      student•
      hace 4 años
      break;

      También permite salir de los ciclos en JavaScript, te dejo la documentación

      Guadalupe Monge Barale

      Guadalupe Monge Barale

      student•
      hace 4 años

      Hola, Luis. También existe en js Documentación.

    JUAN DAVID OSPINA

    JUAN DAVID OSPINA

    student•
    hace 3 años

    Como se recorrería un Arreglo multidimensional Asociativo ?

      Carlos Daniel Oller

      Carlos Daniel Oller

      student•
      hace 3 años

      Hola :) Podes recorrerlo con for, while, foreach, todo va a depender de la estructura del arreglo, vas a tener tantos bucles como arrays dentro de arrays tengas. Te paso un ejemplo sencillo :

      $escuelaMichis = array( array( "Nombre" => "Humita", "Ocupacion" => "Guardiana", "Color" => "Tricolor", ), array( "Nombre" => "Pepe el toga", "Ocupacion" => "Cantante", "Color" => "Blanco", ), ); // Recorrer la estructura foreach($escuelaMichis as $michi){ echo "\nLos datos del michi:\n"; foreach($michi as $propiedad => $valor){ echo "$propiedad = $valor\n"; } echo "\n"; }
    LESTHER XITUMUL MANUEL

    LESTHER XITUMUL MANUEL

    student•
    hace 2 años

    Sentencias break y continue

    En PHP, las sentencias break y continue se utilizan dentro de estructuras de control para modificar el flujo de ejecución del programa.

    La sentencia break se utiliza para salir de un bucle, mientras que la sentencia continue se utiliza para saltar una iteración del bucle y pasar a la siguiente.

    Ejemplo de la sentencia break

    Un ejemplo de la sentencia break en la vida real es la búsqueda de un elemento en un arreglo. Por ejemplo, se puede utilizar un bucle for para buscar un número en un arreglo y salir del bucle cuando se encuentra el número.

    $numeros = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); $buscar = 5; for ($i = 0; $i < count($numeros); $i++) { if ($numeros[$i] == $buscar) { echo "El número $buscar se encuentra en el índice $i.\n"; break; } }

    El output del código PHP es:

    El número 5 se encuentra en el índice 4.

    Este código utiliza un bucle for para buscar el número 5 en un arreglo y salir del bucle cuando se encuentra el número. Dentro del bloque for, se verifica si el valor del elemento actual del arreglo es igual al número a buscar; si es así, se imprime un mensaje y se utiliza la sentencia break para salir del bucle.

    Ejemplo de la sentencia continue

    Un ejemplo de la sentencia continue en la vida real es la impresión de números pares en un rango determinado. Por ejemplo, se puede utilizar un bucle for para imprimir los números pares en el rango del 1 al 10.

    for ($i = 1; $i <= 10; $i++) { if ($i % 2 != 0) { continue; } echo "$i\n"; }

    The output of the provided PHP code is:

    2 4 6 8 10

    Este código utiliza un bucle for para imprimir los números pares en el rango del 1 al 10. Dentro del bloque for, se verifica si el valor del elemento actual es impar, si es así, se utiliza la sentencia continue para saltar a la siguiente iteración del bucle. Si el valor es par, se imprime el número utilizando el comando echo.

    En resumen, las sentencias break y continue son útiles para modificar el flujo de ejecución de un programa dentro de estructuras de control como los bucles for y foreach.

    luis juarez

    luis juarez

    student•
    hace 3 años

    LA TABLA DE SKATE MAS CARA

    <?php $skate_tabla = array( "Pop Shop"=>560.87, "Antifashon"=>630.99, "California"=>1025.99, "Element"=>689.48, "Tree"=>478.36, "Enjoy"=>388.86, "Toy Machine"=>789.88, ); /*foreach ($skate_tabla as $precio) { // code... echo "La tabla de skate cuesta: $$precio MXN \n"; }*/ foreach ($skate_tabla as $tabla => $precio) { if(900>=$precio){ echo "La tabla $tabla cuesta $$precio MXN \n"; continue; }else{ echo "la tabla $tabla mas cara es: $$precio MXN \n"; break; } // echo "La tabla $tabla cuesta $$precio MXN \n"; } echo "\n"; ?>
    Cristian Damaso Calderon Rojas

    Cristian Damaso Calderon Rojas

    student•
    hace 3 años

    como tienda de cafes no seria una cafeteria?

    Rafael Junior Ortiz Sánchez

    Rafael Junior Ortiz Sánchez

    student•
    hace 4 años

    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>"; } }
    Kilian Bakale Bengono Bindang

    Kilian Bakale Bengono Bindang

    student•
    hace 2 años

    Porfavor, este profesor es un ángel. Hada ahora todas sus clases son perfectas

    Hallking Quesada Medina

    Hallking Quesada Medina

    student•
    hace 3 años

    nunca use esos elementos de continue y break, que chulo.

    Emerson David Cabrera Salas

    Emerson David Cabrera Salas

    student•
    hace 3 años

    Uno de mis cicloss favoritos! Te facilita mucho el trabajo!

    Nelson Gonzalez Escalante

    Nelson Gonzalez Escalante

    student•
    hace 3 años

    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.

    Fidel Parabacuto

    Fidel Parabacuto

    student•
    hace 3 años
    $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"); };
    Alejandro Ayala Castro

    Alejandro Ayala Castro

    student•
    hace 3 años

    Hice unos apuntes para comprender fácilmente las estructuras de control condicionales y bucles, con ayuda de diagramas de flujo. Estructuras de control

    FRANK MAIKOL CARRASCO MAMANI

    FRANK MAIKOL CARRASCO MAMANI

    student•
    hace 3 años
    foreach.png
    Luca Lisandro Vallejos

    Luca Lisandro Vallejos

    student•
    hace 3 años

    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>"; }
    José Quero

    José Quero

    student•
    hace 3 años
    $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>"; } }
    Mariano Perez

    Mariano Perez

    student•
    hace 3 años

    $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; } }
    Paula Abad

    Paula Abad

    student•
    hace 4 años

    Excelente clase por fin pude entender el Foreach. Muchas gracias

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads