CursosEmpresasBlogLiveConfPrecios

Contenido del curso

Introducción

  • 1
    ¿Ya conoces los fundamentos de PHP?

    ¿Ya conoces los fundamentos de PHP?

    02:26 min

Arreglos

  • 2
    ¿Qué son los arreglos?

    ¿Qué son los arreglos?

    07:36 min
  • 3
    Arreglos asociativos

    Arreglos asociativos

    13:46 min
  • 4
    Manipulando arreglos

    Manipulando arreglos

    13:43 min
  • 5
    Reto: escuela de michis

    Reto: escuela de michis

    11:50 min

Condicionales

  • 6
    Aprende a tomar decisiones con if y else

    Aprende a tomar decisiones con if y else

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

    Cómo organizar tu código con switch

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

    Reto: ¿puedo retirar mis donaciones de Twitch?

    05:35 min

Bucles

  • 9
    Ciclo while

    Ciclo while

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

    ¿Do... While?

    07:08 min
  • 11
    Ciclo for

    Ciclo for

    10:17 min
  • 12
    Ciclo foreach

    Ciclo foreach

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

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

    21:13 min

Funciones

  • 14
    Aprende a reutilizar tu código: funciones

    Aprende a reutilizar tu código: funciones

    09:55 min
  • 15
    Parámetros en las funciones

    Parámetros en las funciones

    Viendo ahora
  • 16
    Profundicemos en los parámetros

    Profundicemos en los parámetros

    14:30 min
  • 17
    Uso de return

    Uso de return

    07:57 min
  • 18
    Operador de nave espacial

    Operador de nave espacial

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

    ¡Expande tu arsenal de funciones!

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

    Reto: completa el código

    04:46 min

Proyecto: juego del ahorcado con PHP

  • 21
    ¡Hagamos un juego con PHP!

    ¡Hagamos un juego con PHP!

    12:01 min
  • 22
    Validando las letras de los usuarios

    Validando las letras de los usuarios

    10:54 min
  • 23
    Terminando de programar el juego

    Terminando de programar el juego

    12:21 min

Bonus: HTML con esteroides

  • 24
    Cómo interactúa PHP con HTML

    Cómo interactúa PHP con HTML

    08:13 min

Próximos pasos

  • 25
    Toma el Curso Práctico de PHP

    Toma el Curso Práctico de PHP

    02:35 min
Tomar examen

Parámetros en las funciones

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

      Comentarios

      Henry

      Henry

      Estudiante
      Hace 4 años
        Fabio Montenegro

        Fabio Montenegro

        Estudiante
        Hace 4 años
      Guadalupe Monge Barale

      Guadalupe Monge Barale

      Estudiante
      Hace 4 años
      Cristian Pisco Intriago

      Cristian Pisco Intriago

      Estudiante
      Hace 4 años
        Marina Sonia

        Marina Sonia

        Estudiante
        Hace 2 años
        Bryan Castano

        Bryan Castano

        Estudiante
        Hace 2 años
      Jeferson Danilo Castro Becerra

      Jeferson Danilo Castro Becerra

      Estudiante
      Hace 4 años
      Ana Maria Barbosa

      Ana Maria Barbosa

      Estudiante
      Hace 4 años
        Carlos Eduardo Gomez García

        Carlos Eduardo Gomez García

        Profesor
        Hace 4 años
      Eduardo Peraza Vindas

      Eduardo Peraza Vindas

      Estudiante
      Hace 4 años
      Eduardo Peraza Vindas

      Eduardo Peraza Vindas

      Estudiante
      Hace 4 años
        José Fabián Beltrán Meza

        José Fabián Beltrán Meza

        Estudiante
        Hace 4 años
      brayan miguel Oblitas Mejia

      brayan miguel Oblitas Mejia

      Estudiante
      Hace 4 años
        Edgar Castro

        Edgar Castro

        Estudiante
        Hace 4 años
      Joel Dominguez Merino

      Joel Dominguez Merino

      Estudiante
      Hace 4 años
      Juan David Rueda Quiroga

      Juan David Rueda Quiroga

      Estudiante
      Hace 4 años
      Moises de Jesus Martínez Hinojosa

      Moises de Jesus Martínez Hinojosa

      Estudiante
      Hace 4 años
        Jimmy Buriticá Londoño

        Jimmy Buriticá Londoño

        Estudiante
        Hace 4 años
      Sebastian Pérez

      Sebastian Pérez

      Estudiante
      Hace 6 meses
      Julio Cardenas

      Julio Cardenas

      Estudiante
      Hace 9 meses
      Kelly Elideth Ramos Mateos

      Kelly Elideth Ramos Mateos

      Estudiante
      Hace 2 años
      José luis Valbuena lugo

      José luis Valbuena lugo

      Estudiante
      Hace un año
      Victor R. M Cárdenas.

      Victor R. M Cárdenas.

      Estudiante
      Hace 3 años
      Arturo Matías López Salinas

      Arturo Matías López Salinas

      Estudiante
      Hace 3 años
      Kiara Rebecca Olortegui Tirado

      Kiara Rebecca Olortegui Tirado

      Estudiante
      Hace 3 años
      Jose Alejandro Pantoja Giraldo

      Jose Alejandro Pantoja Giraldo

      Estudiante
      Hace 3 años
      Jonnathan Lozano Moreira

      Jonnathan Lozano Moreira

      Estudiante
      Hace 3 años

      un ejemplo super sencillo y mi pequeño aporte. los parámetros son datos que pasamos a la función para que esta los utilice y nos devuelva un resultado a partir de ellos.

      <?php function suma($numero1, $numero2){ echo $numero1 + $numero2; } suma(2,3); ?>

      Un ejemplo básico, pero muy práctico para verlo de manera sencilla.

      Aquí mi aporte. Con el tema del foreach había hecho (guiándome por un compa) un buscador tipo diccionario. Español - Inglés. Acá está dentro una función.

      function buscar_dia($dia_buscado){ //Convertimos a minúsculas $dia_buscado = strtolower($dia_buscado); // Primer letra en mayuscula para que coincida con array $dia_buscado = ucfirst($dia_buscado); $dias = array( "Lunes" => "Monday", "Martes" => "Tuesday", "Miercoles" => "Wednesday", "Jueves" => "Thursday", "Viernes" => "Friday", "Sabado" => "Saturday", "Domingo" => "Sunday" ); // recorremos el array 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; } } return $dia_buscado; } $dia_buscado = readline("\nEscribe el día de la semana que quieras saber como se escribe en inglés: "); buscar_dia($dia_buscado);

      Si en lugar de sumar dos números, queremos sumar varios números, podemos crear una función que reciba una lista de números.

      function sum(...$args) { return array_sum($args); } echo sum(1,2,3,4) // 10;

      muy bueno tu ejemplo y si queremos concatenar strings:

      function adicionar(...$args) { return implode(', ', $args); // Concatenamos los valores con una coma y espacio }

      echo adicionar('Hola', 'mundo', 'en', 'PHP'); // Resultado: "Hola, mundo, en, PHP"

      Gracias por vuestro ejemplo, esto se parece a otros lenguajes de progeamacion que Yo he aprnedido antes. incluso compilados vs Interpretados \n

      Mi humilde aporte, decidi que el sistema decidiera con un rand si era pro o no :V

      ValidaEstudianteLeged(rand(0, 40000)); function ValidaEstudianteLeged($rankPlatzi) { if ($rankPlatzi >= 20000) { echo "tienes un puntaje de $rankPlatzi, Wow eres todo un crak! <br>"; } else { echo "tienes un puntaje de $rankPlatzi, Sigue practicando bro, pronto lo lograras! <br>"; } }

      Estoy haciendo las pruebas con el navegador, ¿la pregunta es, como hago para recibir datos por teclado haciendo pruebas por navegador? no me deja,

      En el navegador tendrías que leer los datos desde un input HTML, por eso para más comodidad estamos usando la terminal :D

      Adjunto mi codigo:

      Lo hice de tal forma para que se repita hasta que el usuario decida salir del programa

      <?php function es_estudiante_legend($platzi_rank){ if ($platzi_rank >= 20000){ echo "Eres un estudiante legend \n"; } else{ echo "Lo siento, aun no alcanzas el nivel legend \n"; } } $active = true; while($active == true){ $rank_input = readline("Digita tu rango platzi: "); es_estudiante_legend($rank_input); echo "\n"; $continuar = readline("Digite 0 para finalizar el programa, de lo contario digite cualquier tecla para continuar \n"); echo "\n"; if ($continuar == 0){ $active = false; } }

      En la seccion de aportes deje mi codigo, haciendo lo mismo pero solo con ciclo while, me cuesta entender cuando es conveniente usar el do while o el while solito

      <?php function es_estudiante_legend($platzi_rank){ if ($platzi_rank >= 20000){ echo "Eres un estudiante legend \n"; } else{ echo "Lo siento, aun no alcanzas el nivel legend \n"; } } $active = true; do{ $rank_input = readline("Digita tu rango platzi: "); es_estudiante_legend($rank_input); $continuar = readline("Digite 0 para finalizar el programa, de lo contario digite cualquier tecla para continuar \n"); if ($continuar == 0){ $active = false; } } while($active == true);

      El do while, lo debes usar cuando quieres ejecutar algo por lo menos una vez, mientras que el while solo se ejecuta dependiendo de la condición, en el caso del WHILE si dicha condición es falsa de entrada, el ciclo while no se ejecutará. Espero poder ayudarte.

      y como podria detener el while?

      En el ejemplo de la clase la única manera de salir es presionando ctrl + c

      Con el uso de parámetros potenciamos aún más a nuestras funciones ya que podemos hacer el tratamiento de esa información que entra de una forma especial y eso las hace más dinámicas al momento de regresar ciertos valores. Comparto el ejemplo que hice donde la función imprime el la tabla de multiplicar del número que recibió como argumento .

      code.png

      Me encantó el readline :)

      Este es mi aporte, lo modifiqué de tal forma que no puedan salir hasta que los estudiantes tengan su rank de legend, jejeje.

      <?php function estudianteLegend($puntos_platzi) { if ($puntos_platzi >= 20000) { echo "Eres un estudiante LEGEND!!!\n"; $status = true; return $status; } else { echo "Lo sentimos, aún no alcanzas el nivel LEGEND.\n"; $status = false; return $status; } } do { $puntos_platzi = (int) readline("Ingresa tus puntos de Platzi: "); $status_legend = estudianteLegend($puntos_platzi); } while ( !$status_legend );

      No es necesario el uso de la variable $status dentro de la función, puedes regresar el valor directamente así:

      function estudianteLegend($puntos_platzi) { if ($puntos_platzi >= 20000) { echo "Eres un estudiante LEGEND!!!\n"; return true; } else { echo "Lo sentimos, aún no alcanzas el nivel LEGEND.\n"; return false; } }
      function student_legend(int $rank) { if ($rank < 1 || $rank > 100) { echo "Rank invalido. Debe estar entre 1 y 100.\n"; return; } if ($rank < 50) { echo "El estudiante con rank $rank necesita mejorar su rendimiento academico.\n"; } if ($rank >= 90) { echo "El estudiante con rank $rank tiene un buen desempeño academico.\n"; } } do { $usuario_rank = (int)readline("Ingrese el rank del estudiante (1-100): "); student_legend($usuario_rank); if ($usuario_rank === 0) { echo "Saliendo del programa.\n"; break; } } while(true);

      Mi aporte :D

      function es_estudiante_legend($platzi_rank) { if ($platzi_rank >= 20000){ echo "Eres un estudiante legend 🙂\n"; }else{ echo "Aun no eres un estudiante legend 😫\n"; } } do { $platzi_rank_user = (int) readline("Introduzca su rank de Platzi: "); es_estudiante_legend($platzi_rank_user); $program_continue = strtolower(readline("¿Desea terminar de ejecutar el programa? Y/N: ")); // echo "Su respuesta fue $program_continue"; } while ($program_continue != "y"); echo "\n";

      ## 📌 Argumentos vs Parámetros

      |Concepto|Definición|

      |---|---|

      |**Parámetros**|Variables definidas en la función.|

      |**Argumentos**|Valores reales que se pasan al llamar la función.|

      function suma($a, $b){ // $a y $b son parámetros &#x20; return $a + $b;&#x20; } &#x20; $resultado = suma(3, 4); // 3 y 4 son argumentos`

      ---

      <?php function es_estudiante_legend($platzi_rank){ $resul = ($platzi_rank >= 2000) ? 'Eres un estudiante Legend' : 'Lo sentimos, aun no alcanzas el nivel legend, sigue adelante!'; echo $resul; } es_estudiante_legend($dato = readline('Ingrese la cantidad que tenga? :')); ?> ```\<?phpfunction es\_estudiante\_legend($platzi\_rank){    $resul = ($platzi\_rank >= 2000) ? 'Eres un estudiante Legend' : 'Lo sentimos, aun no alcanzas el nivel legend, sigue adelante!';    echo $resul;}es\_estudiante\_legend($dato = readline('Ingrese la cantidad que tenga? :'));?>

      Hice la funcion de la clase anterior pero con parámetros:

      <?php $min = readline("Por favor ingrese el numero minimo "); $max = readline("Por favor ingrese el numero maximo "); function poketontos ($min , $max){ $numero_aleatorio = rand( $min , $max); switch ($numero_aleatorio) { case 1: echo "Pikachu"; break; case 2: echo "Charmander"; break; case 3: echo "Mewto"; break; default: echo "Lo siento, no hay pokemon pa ti"; break; } echo "\n"; } for( $i = 0; $i < 20 ; $i++ ){ poketontos($min , $max); }

      pipipi

      PILAS CON EL USO DE LOS WHILE!! primer aviso jajaja xD

      me gustó mucho la forma de usar varios ciclos para reciclar código.. me ha dado varias ideas