Enfoque
Objetivo
Ampliar el conocimiento del lenguaje PHP y de sus estructuras.
Comprender el funcionamiento de la programación orientada a objetos en PHP.
Estructurar de manera adecuada nuestro código, separando el diseño de la funcionalidad y controlar versiones en diferentes idiomas.
Implementar funcionalidades habituales en la programación web tales como web services, single sign-ons o llamadas ajax entre otros.
Localizar y utilizar librerías de terceros para utilizar en nuestros desarrollos.
Dirigido a:
Este curso está dirigido a personas que, teniendo unas nociones básicas de PHP, deseen ampliar sus conocimientos.
Requisitos:
Es necesario que el alumno cuente con conocimientos básicos de PHP para que pueda comprender la mecánica de los códigos propuestos.
Del mismo modo, es recomendable para la comprensión de los contenidos del curso, que el alumno cuente con unos conocimientos básicos de HTML y de bases de datos MySQL.
Para la realización del curso es necesario que el alumno tenga instalado el siguiente software en su equipo:
Editor de texto plano (Recomendamos Notepad++).
Servidor web (Recomendamos Apache).
Módulo de PHP para el servidor web.
Servidor MySQL o MariaDB
Todo el software es gratuito y en las primeras unidades de los cursos se proveen los enlaces de descarga al mismo y se explica mediante vídeos cómo instalarlo y configurarlo.
Temario del curso
1 - Introducción y software necesario
Objetivo
Al finalizar esta unidad el alumno conocerá el entorno de trabajo y el software que emplearemos durante todo el desarrollo del curso.
Duración de la unidad
2 Horas 40 Minutos
Contenido
1. Introducción y software necesario
1.1. Uso profesional de PHP
1.2. Versiones de PHP
1.3. El servidor de desarrollo
1.3.1. Descarga de XAMPP
1.3.2. Instalación de XAMPP
1.3.3. Configuración de XAMPP
1.3.3.1. El panel de control
1.3.3.2. Configurando el entorno
1.3.3.3. La carpeta pública
1.4. Editor de texto para PHP
1.4.1. Descarga de Notepad++
1.5. Cliente de MySQL
1.5.1. ¿Qué es phpMyAdmin?
1.5.2. Descarga e instalación de phpMyAdmin
1.5.3. Utilización de phpMyAdmin
1.5.3.1. Gestión de bases de datos.
1.5.3.2. Gestión de tablas.
1.5.3.3. Gestión de datos.
1.5.3.4. Ejecución de consultas SQL.
1.5.3.5. Importar y exportar datos.
1.6. Hemos aprendido
1.7. Ejercicios
1.7.1. Ejercicio 1: Descarga e instala XAMPP
1.7.1.1. Lo necesario para comenzar
1.7.1.2. Pasos a seguir
1.7.2. Ejercicio 2: Descarga e instala Notepad++
1.7.2.1 Lo necesario para comenzar
1.7.2.2. Pasos a seguir
1.7.3. Ejercicio 3: Descarga e instala phpMyAdmin
1.7.3.1. Lo necesario para comenzar
1.7.3.2. Pasos a seguir
2 - Programación orientada a objetos
Objetivo
Al finalizar esta unidad el alumno será capaz de definir clases y crear objetos. Del mismo modo, será capaz de crear clases que hereden de otras clases y conocerá el ámbito de las variables y funciones contenidas en las mismas.
Duración de la unidad
3 Horas 55 Minutos
Contenido
2. Programación orientada a objetos
2.1. Clases y objetos
2.1.1. Sintaxis de una clase
2.1.2. La pseudovariable $this
2.2. Ámbito de los métodos y propiedades de una clase
2.2.1 Propiedades estáticas
2.1.2. Métodos estáticos
2.3. Constructores y destructores
2.4. Herencia de clases
2.4.1. Ámbito de los métodos y propiedades de una clase heredada
2.4.2. Sobrescritura de métodos
2.4.3. Clases abstractas
2.4.4. Métodos abstractos
2.4.5. Métodos finales
2.5. Hemos aprendido
3 - Extensiones y librerías
Objetivo
Al finalizar esta unidad el alumno será capaz de buscar, instalar y activar extensiones de PHP, así como de utilizar librerías de terceros en sus desarrollos.
Duración de la unidad
2 Horas 15 Minutos
Contenido
3. Extensiones y librerías
3.1. Extensiones
3.1.1. Búsqueda de extensiones
3.1.2. Activación de extensiones
3.1.3. Instalación de extensiones
3.1.3.1. Carpeta de extensiones
3.1.3.2. Instalación de extensiones en Windows
3.1.3.3. Instalación de extensiones en Linux
3.2. Librerías
3.2.1. Ejemplo práctico: Librería PHPMailer
3.2.2. Descarga de PHPMailer
3.2.3. Añadir PHPMailer a nuestro proyecto
3.2.4. Enviar un e-mail con PHPMailer
3.3. Hemos aprendido
4 - Tratamiento de imágenes
Objetivo
Al finalizar esta unidad el alumno será capaz de realizar un procesamiento de imágenes completo, aplicando todo tipo de transformaciones a sus recursos gráficos y generando archivos de imagen o salidas por pantalla en diferentes formatos (JPEG, PNG, GIF o BMP).
Duración de la unidad
3 Horas 45 Minutos
Contenido
4. Tratamiento de imágenes
4.1. La biblioteca GD
4.2. Generar un recurso de imagen
4.3. Exportar nuestro recurso de imagen
4.4. Funciones de tratamiento de imágenes
4.5. Procesar archivos de imagen enviados mediante un upload
4.6. Caché de las imágenes
4.7. Hemos aprendido
5 - Archivos en formato PDF
Objetivo
Al finalizar esta unidad el alumno será capaz de generar todo tipo de documentos en formato PDF utilizando la librería FPDF.
Duración de la unidad
3 Horas 20 Minutos
Contenido
5. Archivos en formato PDF
5.1. Introducción
5.2. La librería FPDF
5.3. Descarga e instalación
5.3.1. Descarga e instalación de la versión UTF-8
5.4. Generando nuestro primer PDF
5.5. Configurando el entorno
5.6. Añadiendo contenido
5.7. Estilos de celda
5.8. Recursos gráficos
5.9. Configuración de página
5.10. Cabecera y pie de página
5.11. Hemos aprendido
6 - Single Sign-On
Objetivo
Al finalizar esta unidad el alumno será capaz de crear un sistema de autenticación entre dos aplicaciones web independientes para que el usuario pueda identificarse en ambas con una solo login.
Duración de la unidad
2 Horas 20 Minutos
Contenido
6. Single Sign-On
6.1. ¿Qué es SSO?
6.2. Proveedor de identidad: Crear el enlace
6.3. Proveedor de servicio: Implementar el endpoint
6.4. Securizando el SSO
6.4.1. Firma de datos
6.4.2. Hacer que el enlace caduque
6.5. Otras opciones de implementación
6.6. Hemos aprendido
7 - Web services
Objetivo
Al finalizar esta unidad el alumno será capaz de crear un web service utilizando REST API. Del mismo modo también será capaz de crear aplicaciones web que consuman web services de terceros.
Duración de la unidad
4 Horas 50 Minutos
Contenido
7. Web services
7.1. ¿Qué es un web service?
7.2. Crear un web service básico
7.2.1. Generar un endpoint
7.2.2. Llamar al endpoint
7.2.3. Estandarización de web services
7.3. REST
7.3.1. Generar la petición HTTP que llama al servicio REST
7.3.2. Configurar el endpoint del web service
7.3.3. Recuperar datos de la petición desde el web service
7.3.4. Generar la respuesta
7.3.5. Recuperar datos de la respuesta
7.4. Hemos aprendido
8 - Lógica de negocio y presentación
Objetivo
Al finalizar esta unidad el alumno será capaz de separar por completo la lógica de negocio de la presentación en sus aplicaciones web, utilizando tanto soluciones propias como motores de plantillas ya existentes.
Duración de la unidad
4 Horas 10 Minutos
Contenido
8. Lógica de negocio y presentación
8.1. Separando la lógica de negocio de la presentación
8.1.1. Segmentar las plantillas
8.1.2. Repetir secciones de código
8.1.3. Trabajar con idiomas
8.2. Motor de plantillas predesarrollado: Smarty
8.2.1. Descargar y configurar Smarty
8.2.2. Utilizar las plantillas
8.2.3. Segmentar las plantillas
8.2.4. Repetir secciones de código
8.2.5. Trabajar con idiomas
8.2.6. Funcionalidades adicionales del código Smarty
8.3. Hemos aprendido
9 - Modelo Vista Controlador
Objetivo
Al finalizar esta unidad el alumno será capaz de estructurar el código de sus aplicaciones web utilizando el patrón Modelo Vista Controlador.
Duración de la unidad
2 Horas 45 Minutos
Contenido
9. Modelo Vista Controlador
9.1. Ciclo de vida del patrón MVC
9.2. Estructura de la aplicación web
9.3. Controlador
9.4. Modelo
9.5. Vista
9.6. Hemos aprendido