PHP es uno de los lenguajes más utilizados en Internet y está presente en aplicaciones muy conocidas como WordPress, Joomla, Moodle o el propio Facebook. Desde sus inicios fue crea...
PHP es uno de los lenguajes más utilizados en Internet y está presente en aplicaciones muy conocidas como WordPress, Joomla, Moodle o el propio Facebook. Desde sus inicios fue creado pensando en la sencillez de uso y en facilitar una curva de aprendizaje gradual al programador. MySQL es el sistema de gestión de bases de datos más popular y extendido en la actualidad.
Este libro es ideal para aprender de forma gradual a dominar las nuevas versiones de PHP y MySQL. Cubre todos los aspectos necesarios para aprender PHP 8, una evolución del lenguaje original en la que se han invertido numerosos años en mejorar todos los aspectos tecnológicos del lenguaje, modernizándolo constantemente. También MySQL 8 incorpora muchas novedades como el soporte para UTF8, el formato JSON, funcionalidades GIS y mucho más.
El libro puede dividirse en varios apartados lógicos: una primera parte como introducción a lo que se puede hacer con PHP seguida de una descripción de MySQL como motor principal de bases de datos. Una tercera parte que añade capítulos donde se mezclan PHP y MySQL y una última sobre aspectos avanzados. Además, cuenta con un capítulo introductorio a Laravel 8 para elevar tus conocimientos de PHP a la máxima potencia con este framework.
Índice
Cómo usar este libro
1. Introducción a PHP 8 y MySQL 8
1.1. Introducción
1.2. Instalación de PHP 8 y MySQL 8
1.3. git
1.4. Docker
1.5. docker-compose
1.6. MySQL Workbench
1.7. Resumen
1.8. Recomendaciones
2. Variables, Tipos y Constantes
2.1. Introducción
2.2. Variables
2.3. Tipos
2.4. Variables de variables
2.5. Funciones de variables
2.6. Constantes
2.7. Resumen
3. Operadores
3.1. Introducción
3.2. Operadores de asignación
3.3. Operadores Unario
3.4. Operadores aritméticos
3.5. Operador de comparación
3.6. Operadores lógicos
3.7. Operador ternario
3.8. Operadores bit a bit
3.9. Operadores de asignación combinados
3.10. Operador de ejecución
3.11. Operador de coalescencia nulo
3.12. Operador nave espacial
3.13. Precedencia de operadores
3.14. Resumen
4. Estructuras de control
4.1. Introducción
4.2. Estructuras de elección
4.3. Bucles
4.4. break y continue
4.5 Finalizar la ejecución de un programa
4.6. Sintaxis alternativa
4.7. Resumen
5. Funciones
5.1. Introducción
5.2. Valores de las funciones
5.3. Función para obtener la fecha
5.4. Documentación sobre funciones
5.5. Definir funciones propias
5.6. Ámbito de las variables
5.7. Argumentos por defecto
5.8. Argumentos variables
5.9. Argumentos con tipo definido
5.10. Funciones con tipo definido
5.11. Funciones anónimas
5.12. Recursividad
5.13. Organizar el código
5.14. Llamadas por valor
5.15. Llamadas por referencia
5.16. Resumen
6. Cadenas de caracteres y expresiones regulares
6.1. Introducción
6.2. Propiedades de las cadenas
6.3. Funciones de string
6.4. Expresiones regulares
6.5. Resumen
6.6. Recomendaciones
7. Conjunto de datos tipo array
7.1. Introducción
7.2. Creación de arrays
7.3. Arrays multidimensionales
7.4. Propiedades de los arrays
7.5. Pilas
7.6. Ordenación de valores
7.7. Resumen
8. Formularios
8.1. Introducción
8.2. GET y POST
8.3. Subir ficheros
8.4. Validación y saneamiento
8.4. Resumen
9. Programación Orientada a Objetos
9.1. Introducción
9.2. Definición de clase
9.3. Instancia de clase
9.4. Promoción de las propiedades del constructor
9.5. Argumentos con nombre
9.6. Espacios de nombre
9.7. Atributos
9.8. Métodos mágicos
9.9. Serialización
9.10. Resumen
9.11. Recomendaciones
10. Código limpio
10.1. Introducción
10.2. Código Limpio
10.3. Principios SOLID
10.4. Resumen
10.5. Recomendaciones
11. Patrones de Diseño
11.1. Introducción
11.2. Patrones de creación
11.3. Patrón de comportamiento Observer
11.4. Patrón estructural Decorator
11.5. Resumen
11.6. Recomendaciones
12. MySQL 8
12.1. ¿Qué es MySQL?
12.2. MySQL WorkBench
12.3. Manejar esquemas
12.4. Tipos de datos
12.5. Tablas
12.6. Relaciones
12.7. Resumen
13. Índices y Consultas
13.1. Índices
13.2. Consultando una base de datos MySQL
13.3. Cruzando tablas
13.4. Operadores lógicos
13.5. Funciones MySQL
13.6. Resumen
14. Normalización y Transacciones
14.1. Introducción
14.2. Normalización
14.3. Relaciones
14.4. Transacciones
14.5. Resumen
15. CRUD con PHP y MySQL
15.1. Introducción
15.2. Extensiones MySQL
15.3. Conexión a MySQL
15.4. Seleccionar datos
15.5. Manipulación de datos
15.6. Contar filas
15.7. Contar filas afectadas
15.8. Último número insertado
15.9. PDO (PHP Data Object)
15.10. Resumen
16. Servicios
16.1. Introducción (cliente-servidor)
16.2. SOAP
16.3. REST
16.4. Laravel Lumen
16.5. Introducción a los microservicios
16.6. Resumen
17. Sesiones y autenticación
17.1. Seguridad de los datos en MySQL
17.2. Cookies y Sesiones en PHP
17.3. Gestión de variables de sesión
17.4. Autenticación básica
17.5. Autenticación con MySQL
17.6. Resumen
18. Control de errores y logging
18.1. Errores y excepciones
18.2. Control de errores sin excepciones
18.3. Depuración de errores
18.4. Logging
18.5. Resumen
19. Imágenes y PDF
19.1. Introducción
19.2. Gráficos con HTML
19.3. Librería GD2
19.4. Metadafos EXIF
19.5. Generación de PDF al vuelo
19.6. Resumen
20. Testing
20.1. Introducción
20.2. Test unitarios
20.3. Dobles de test
20.4. Unit test at first
20.5. Coverage
20.6. Resumen
21. React
21.1. Introducción
21.2. Instalación del sistema
21.2. Primeros pasos
21.3. Gestión del estado
21.4. Efectos
21.5. Consumo de API REST
21.6. Resumen
21.7. Recomendaciones
22. Laravel 8
22.1. Introducción
22.2. Primeros pasos con Laravel
22.3. Plantillas con Blade
22.4. Controladores y middleware
22.5. Formularios
22.6. CRUD con Laravel
22.7. Resumen
Índice alfabético