Biblioteca Online : ¡La Suscripción ENI por 9,90 € el primer mes!, con el código PRIMER9. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. Symfony 5 - Desarrolle sitios web PHP estructurados y eficientes

Symfony 5 Desarrolle sitios web PHP estructurados y eficientes

Información adicional

  • 5% de descuento en todos los libros
  • Envío gratis a partir de 25 € de compra
  • Versión online gratis por un año

Características

  • Encuadernación rústica - 17 x 21 cm
  • ISBN: 978-2-409-04140-2
  • EAN: 9782409041402
  • Ref. ENI: EIT5SYM

Información adicional

  • 5% de descuento en todos los libros
  • Versión online digital, no descargable
  • Consultable en línea durante 10 años inmediatamente después de la validación del pago.

Características

  • HTML
  • ISBN: 978-2-409-04141-9
  • EAN: 9782409041419
  • Ref. ENI: LNEIT5SYM
Este libro sobre Symfony 5 se dirige a los desarrolladores, jefes de proyecto y directores técnicos que quieran, gracias a este framework, estructurar y organizar sus desarrollos PHP dentro de un entorno de desarrollo de aplicaciones robusto y profesional. El dominio de la programación orientada a objetos con PHP, es un requisito previo indispensable para sacar el máximo beneficio de estas páginas. El libro cubre los principales componentes de Symfony 5, en la actualidad considerado el framework...
Consultar extractos del libro Extracto del libro
  • Nivel Medio a Experto
  • Número de páginas 542 páginas
  • Publicación junio 2023
  • Nivel Medio a Experto
  • Publicación junio 2023
Este libro sobre Symfony 5 se dirige a los desarrolladores, jefes de proyecto y directores técnicos que quieran, gracias a este framework, estructurar y organizar sus desarrollos PHP dentro de un entorno de desarrollo de aplicaciones robusto y profesional. El dominio de la programación orientada a objetos con PHP, es un requisito previo indispensable para sacar el máximo beneficio de estas páginas.

El libro cubre los principales componentes de Symfony 5, en la actualidad considerado el framework PHP de referencia. Pro­porciona el conocimiento básico que le permite, no solo crear un sitio web, sino también entender y dominar su funcionamiento en todo detalle. Un capítulo entero se dedica a la arquitectura del framework.

Los temas que se detallan van desde la instalación de Symfony a la creación de las pruebas unitarias y funcionales. La gestión de los formularios, las interacciones con una base de datos, las plantillas, los registros de actividad o incluso la seguridad de la aplicación, son otros de los temas tratados en el libro.

El tiempo de carga de las páginas de un sitio web es un elemen­to crucial, por lo que hay un capítulo dedicado a las técnicas y trucos para mejorar considerablemente el rendimiento de una aplicación. Para terminar, también se abordan las restricciones de la puesta en producción, dentro de un capítulo dedicado al des­pliegue de una aplicación Symfony.

El autor ha estructurado los capítulos para facilitar el aprendizaje de Symfony 5 y a lo largo de las páginas de este libro muestra, consejos, buenas prácticas y ejemplos detallados.

Hay elementos adicionales para descarga en el sitio web www.ediciones-eni.com.

Descargas

Introducción
  1. Prólogo
  2. Público objetivo
  3. Requisitos previos
  4. Objetivos del libro
  5. Desarrollo con frameworks
    1. 1. Complejidad del desarrollo y productividad
      1. a. Productividad y calidad del software
      2. b. Integración y entrega continuas
    2. 2. Particularidad de los desarrollos PHP
      1. a. Contexto histórico de PHP
      2. b. Evoluciones
    3. 3. La contribución de los frameworks
      1. a. Evitar los problemas técnicos relacionadoscon la organización del código
      2. b. Definir responsabilidades
      3. c. No reinventar la rueda
      4. d. Utilizar patrones de diseño verificados
  6. Symfony
    1. 1. Historia
    2. 2. Control y gestión de versiones
      1. a. Versiones
      2. b. El ciclo de «release»
    3. 3. Elegir su versión para un proyecto
Implementación de un proyecto Symfony
  1. Las herramientas necesarias
    1. 1. Introducción
    2. 2. Symfony: Un proyecto PHP
      1. a. Recomendación de instalación
      2. b. Instalación en Linux
      3. c. Instalación en Windows
    3. 3. Symfony CLI
    4. 4. Composer
      1. a. Instalar Composer
    5. 5. Entornos de desarrollo para Symfony
      1. a. Un IDE para Symfony
      2. b. PhpStorm
      3. c. Eclipse IDE for PHP Developers
      4. d. Visual Studio Code
      5. e. Conclusión
  2. Crear un proyecto Symfony
    1. 1. Requisitos previos
    2. 2. Creación a través del instaladorde Symfony
    3. 3. Creación a través de Composer
    4. 4. Configurar el servidor web
      1. a. Servidor web PHP
      2. b. Apache y Nginx
  3. Estructura de la aplicación
    1. 1. Árbol del proyecto
    2. 2. Reglas y convenciones para la organizacióndel proyecto
      1. a. El estándar PSR-4
      2. b. Convenciones de nomenclatura
    3. 3. Configurar una aplicación Symfony
      1. a. Anotaciones
      2. b. El formato YAML
      3. c. El formato XML
      4. d. El formato PHP
      5. e. Atributos de PHP 8
      6. f. Elegir su formato de configuración
Arquitectura del framework
  1. El modelo de diseño MVC
    1. 1. Definiciones y responsabilidades
      1. a. La vista
      2. b. El modelo
      3. c. El controlador
    2. 2. En la práctica
      1. a. El controlador front
      2. b. Enrutamiento
      3. c. El controlador y el modelo
      4. d. La vista
      5. e. En resumen
  2. Arquitectura de Symfony
    1. 1. Presentación
    2. 2. El controlador front
    3. 3. El Service Container
    4. 4. ¿El modelo MVC en Symfony?
    5. 5. El enfoque basado en componentes
  3. Symfony Flex
    1. 1. Presentación
    2. 2. Funcionamiento de Symfony Flex
    3. 3. Las recipes Symfony
  4. Entornos
    1. 1. Aspectos principales y contribuciones
    2. 2. Archivos de configuración
    3. 3. En el contexto HTTP
    4. 4. En el contexto CLI (Command Line Interface)
  5. Carga automática de clases
    1. 1. El estándar PSR-4
    2. 2. Mecanismos alternativos
    3. 3. Cómo funciona con las aplicaciones Symfony
  6. La consola
    1. 1. Presentación
    2. 2. Los comandos
      1. a. Lista de comandos disponibles
      2. b. Ejecutar un comando
    3. 3. Opciones
    4. 4. Argumentos
    5. 5. Ayuda de los comandos
    6. 6. Ejecutar comandos rápidamente
  7. Herramientas para la depuración
    1. 1. El profiler Symfony
    2. 2. La función dump()
Enrutamiento y controlador
  1. Cómo funciona el enrutamiento en Symfony
    1. 1. Definición
    2. 2. El directorio public y el controlador front
    3. 3. Una petición, una acción
  2. Definir rutas
    1. 1. Los diferentes formatos de definición
    2. 2. Opciones para definir rutas
  3. Configurar el path
    1. 1. El ejemplo /hello/world
    2. 2. La notación del controlador
    3. 3. Importar rutas desde otros archivos
    4. 4. Comprender el orden de carga de las rutas
    5. 5. Prefijar las rutas
    6. 6. Parámetros de sustitución de rutas
    7. 7. Restricciones sobre los parámetros
    8. 8. Obtener información de enrutamiento
  4. Enrutamiento por nombre de dominio
    1. 1. Requisitos previos
    2. 2. Ejemplo de implementación
    3. 3. Explicaciones
  5. El controlador
    1. 1. Modelo de programación y reglas
    2. 2. Trabajar con servicios
    3. 3. Utilizar los parámetros de sustitución
      1. a. Parámetros de sustitución de rutas
      2. b. Ejemplos
    4. 4. Trabajar con las URL
    5. 5. Realizar una redirección
    6. 6. Delegar peticiones
    7. 7. Gestionar errores y páginas de error en loscontroladores
      1. a. El controlador
      2. b. La vista
Inyectar dependencias
  1. El patrón de diseño IoC: Inversion Of Control
    1. 1. Contribuciones en una arquitectura aplicativa
    2. 2. IoC e inyección de dependencias
  2. Inyectar dependencias
    1. 1. Aspectos básicos
    2. 2. Las diferentes técnicas de inyecciónde dependencias
      1. a. Inyectar dependencias por parte del constructor
      2. b. Inyectar dependencias por setter (mutador)
      3. c. Inyectar dependencias por propiedad
    3. 3. Las ventajas
  3. El Service Container
    1. 1. Servicios
    2. 2. Explicaciones a través de un servicio X
  4. Crear un servicio y configurar sus inyecciones
    1. 1. Crear un servicio
    2. 2. Los diferentes tipos de inyecciones en un servicioSymfony
      1. a. Inyección por constructor
      2. b. Inyección por método
      3. c. Inyección por propiedad
    3. 3. Inyección automática con autowiring
    4. 4. Servicios «lazy»
  5. Carga automática de servicios
    1. 1. Configuración
    2. 2. Ejemplo de uso
  6. Crear servicios reutilizables y distribuibles
    1. 1. El concepto de bundle
      1. a. Crear un bundle
      2. b. Arborescencia de bundles
    2. 2. Definir servicios en un bundle
    3. 3. Configuración
      1. a. Definir una arborescencia
      2. b. Las diferentes etapas del procesamiento de la configuración
      3. c. Recuperar la configuración validada
    4. 4. Los «Compiler Passes»
      1. a. Concepto
      2. b. Los tags
      3. c. El Compiler Pass
Plantillas con Twig
  1. Presentación y conceptos
    1. 1. El concepto de Templating
    2. 2. Templating y modelo MVC
  2. Twig
    1. 1. Presentación
    2. 2. ¿Por qué un nuevo lenguaje?
    3. 3. Puesta en práctica
    4. 4. Observaciones sobre la utilización
    5. 5. Notación de las templates
    6. 6. Extensión del sistema de templates
    7. 7. La anotación @Template
  3. Layouts y bloques
    1. 1. Composición de las páginas
    2. 2. Definir el layout
    3. 3. Los bloques
  4. El lenguaje Twig
    1. 1. Los diferentes tipos de instrucciones
    2. 2. Manipular las variables
      1. a. Utilizar variables en las templates
      2. b. Utilizar variables de tabla u objeto
    3. 3. Estructuras de control y tags
      1. a. Condiciones
      2. b. Bucles
    4. 4. Etiquetas Twig
      1. a. Crear y modificar variables
      2. b. Twig y el escapado
    5. 5. Incluir templates
  5. Filtros y funciones
    1. 1. Información general sobre los filtros
    2. 2. Los principales filtros Twig
      1. a. Cadenas de caracteres
      2. b. Escapado
      3. c. Codificación
    3. 3. Funciones
      1. a. Twig y enrutamiento
      2. b. Depurar con la función dump
  6. Gestionar recursos estáticos (imágenes, hojas de estilo, scripts JS, etc.)
    1. 1. Recursos estáticos en una aplicaciónSymfony
    2. 2. El caso de los recursos estáticos externos
    3. 3. Hacer referencia a recursos públicos desdeuna template
    4. 4. Caso práctico con el framework CSS Bootstrap
  7. Extender el frontend con Webpack Encore
    1. 1. Presentación
    2. 2. Instalar y configurar Encore
      1. a. Requisitos previos
      2. b. Instalar Encore
    3. 3. Utilizar Encore
Acceder a las bases de datos con Doctrine
  1. Presentación y conceptos
    1. 1. Aspectos básicos de ORM
    2. 2. Arquitectura de Doctrine
      1. a. DBAL
      2. b. Entidad
      3. c. ORM
    3. 3. La noción de entidad
  2. Instalar y configurar Doctrine
    1. 1. Configurar Doctrine
    2. 2. Relación con PDO
    3. 3. Configuración
  3. Definir entidades y su mapeo
    1. 1. Reglas de diseño de las entidades
    2. 2. Sintaxis para el mapping de entidades
    3. 3. Mapeo simple de entidades
      1. a. Definir una entidad con @ORM\Entity
      2. b. Administrar las columnas de la tabla con @ORM\Column
      3. c. @ORM\Table
      4. d. Claves primarias
      5. e. Configurar índices
    4. 4. El mapping de relaciones (claves extranjeras)
      1. a. @ORM\OneToOne
      2. b. @ORM\ManyToOne
      3. c. @ORM\ManyToMany
      4. d. Relaciones bidireccionales
    5. 5. Herramientas de consola
      1. a. Recuperar los errores de mapping
      2. b. Generar el esquema de datos a partir de las entidades
      3. c. Generar entidades a partir del esquema de datos
  4. Manipular entidades con EntityManager
    1. 1. El rol de EntityManager
    2. 2. Insertar datos
    3. 3. Modificar datos
    4. 4. Eliminar datos
    5. 5. Otras operaciones de EntityManager
      1. a. refresh()
      2. b. detach()
    6. 6. Operaciones en cascada
  5. Recuperar entidades
    1. 1. El repositorio
      1. a. Un rol centralizador
      2. b. Los métodos básicos del repositorio
      3. c. Métodos personalizados del repositorio
    2. 2. El DQL
      1. a. SELECT
      2. b. FROM
      3. c. JOIN y LEFT JOIN
      4. d. WHERE
      5. e. ORDER BY
      6. f. Límites
      7. g. Límites y paginación
    3. 3. El QueryBuilder
  6. Funciones avanzadas
    1. 1. Las extensiones Doctrine
      1. a. Instalación
      2. b. Utilizar un slug en una entidad
Administración de eventos de aplicaciones
  1. Conceptos y escucha de eventos aplicativos
    1. 1. Propagar eventos
    2. 2. Escuchar eventos (Events Listener)
  2. Eventos del kernel
    1. 1. Los diferentes tipos de eventos
    2. 2. Aplicaciones
  3. Eventos de consola
    1. 1. Requisito previo
    2. 2. Eventos
Formularios
  1. Un componente MVC
    1. 1. El modelo
    2. 2. El controlador
    3. 3. La vista
  2. Funcionamiento del componente
    1. 1. El objeto «Form»
      1. a. Envío (submit)
      2. b. Validación
      3. c. Vista
    2. 2. Tipos
    3. 3. Opciones
    4. 4. Los objetos «Form» y «FormBuilder»
      1. a. El FormBuilder
      2. b. Estructura del objeto Form
    5. 5. Asociación con el objeto de la capa Model
    6. 6. Formularios sin objeto
    7. 7. Representar los valores
      1. a. Transformar los datos
      2. b. Ejemplo con tipo date
  3. Tipos de campos de formulario
    1. 1. Herencia
    2. 2. FormType
      1. a. label
      2. b. label attr
      3. c. data
      4. d. required
      5. e. disabled
      6. f. mapped
      7. g. property_path
      8. h. attr
      9. i. trim
      10. j. error_bubbling
    3. 3. TextType
    4. 4. PasswordType
    5. 5. RepeatedType
      1. a. type
      2. b. first_options y second_options
      3. c. options
      4. d. first_name
      5. e. second_name
      6. f. invalid_message
    6. 6. ChoiceType
      1. a. choices
      2. b. expanded y multiple
      3. c. placeholder
      4. d. preferred_choices
      5. e. Tipos similares
    7. 7. EntityType
      1. a. class
      2. b. choice_label
      3. c. query_builder
      4. d. group_by
      5. e. em
    8. 8. DateType
      1. a. widget
      2. b. format
      3. c. model_timezone
      4. d. view_timezone
      5. e. years
      6. f. months
      7. g. days
      8. h. placeholder
      9. i. Tipos similares
    9. 9. FileType
      1. a. multiple
      2. b. Recuperar archivos
      3. c. Procesar los archivos
    10. 10. CheckboxType
    11. 11. SubmitType, ResetType y ButtonType
  4. Crear formularios reutilizables
    1. 1. Definir un formulario con la clase AbstractType
    2. 2. Utilizar un formulario definido en una clase
      1. a. Definición manual
      2. b. Con inyección de dependencias
  5. Validar los datos
    1. 1. Objetivos
    2. 2. Definir restricciones de validación
      1. a. Añadir restricciones durante la configuraciónde un formulario
      2. b. Añadir restricciones en el objeto asociadoal formulario
      3. c. Los diferentes formatos de configuración
      4. d. Opciones
    3. 3. Restricciones y sus opciones
      1. a. NotBlank y NotNull
      2. b. IsNull y Blank
      3. c. IsTrue, IsFalse
      4. d. Type
      5. e. Email, Url e Ip
      6. f. Regex
      7. g. Length, Count
      8. h. Range
      9. i. Comparaciones
      10. j. Dates
      11. k. File
      12. l. Image
      13. m. Choice
      14. n. UniqueEntity
      15. o. Datos financieros
      16. p. Callback
      17. q. All
      18. r. Valid
    4. 4. Grupos de validación
    5. 5. Validar un objeto fuera del contexto de un formulario
  6. Personalizar la representación: temas de formulario
    1. 1. Ver el formulario manualmente
      1. a. form_start()
      2. b. form_end()
      3. c. form_widget()
      4. d. form_errors()
      5. e. form_label()
      6. f. form_row()
      7. g. form_rest()
      8. h. Arborescencia de partes de formulario
    2. 2. Crear temas
      1. a. Formulario de ejemplo
      2. b. Crear y asociar un tema de formularios
      3. c. Describir los nombres de bloque
Seguridad en una aplicación Symfony
  1. Descripción general y conceptos de seguridad
    1. 1. Los desafíos de la seguridad de las aplicacionesweb
    2. 2. Seguridad en Symfony
  2. Autenticación
    1. 1. Cortafuegos
    2. 2. Autenticación HTTP
    3. 3. Autenticación por formulario de conexión
    4. 4. Conexión automática de los usuarios
    5. 5. Desconexión de usuarios
  3. Usuarios y roles
    1. 1. El usuario
      1. a. Recuperar el usuario actual
    2. 2. Proveedores de usuarios
      1. a. En memoria
      2. b. Proveedor de usuarios de base de datos
      3. c. Proveedor de usuarios personalizado
      4. d. Notas adicionales
    3. 3. Cifrado de contraseña
      1. a. Encoders
      2. b. El salt
      3. c. Cifrar una contraseña
    4. 4. Los roles
  4. Permisos
    1. 1. Los roles en el centro del proceso
    2. 2. Comprobar el rol de usuario
    3. 3. Dar seguridad a una acción
    4. 4. Dar seguridad a una sección de la aplicación
    5. 5. Dar seguridad en función de otros criterios
    6. 6. Para ir más allá
Desarrollar una API REST con Symfony
  1. Introducción a REST y conceptos fundamentales
    1. 1. Los conceptos de REST
      1. a. Los recursos
      2. b. Cambiar el estado de un recurso
    2. 2. Arquitectura y protocolo HTTP
    3. 3. Las Single-Page Applications
  2. Administrar el formato JSON
    1. 1. Introducción a JSON
      1. a. Representar datos en JSON
      2. b. Tipos de datos
      3. c. Estructuras
    2. 2. Soporte para JSON en PHP
    3. 3. ¿Y en Symfony?
  3. Configurar una API REST
    1. 1. El servicio de serializador
      1. a. Serializar datos
      2. b. Deserializar datos
    2. 2. Adaptar los controladores
  4. Objetos de petición y respuesta
    1. 1. Contenido y cabeceras de peticiones
    2. 2. Manipular respuestas con Response y JsonResponse
    3. 3. Códigos de respuesta HTTP en una API REST
      1. a. Problema del estado de la respuesta
      2. b. Expresar la respuesta con HTTP
      3. c. Implementación
  5. Probar una API REST
    1. 1. Los límites del navegador web
    2. 2. Herramientas
      1. a. Postman
      2. b. SOAP UI
  6. Crear una API REST con API Platform
    1. 1. Presentación
    2. 2. Instalación
    3. 3. Configurar API Platform
    4. 4. Definir la API
      1. a. Operaciones de la API
      2. b. Personalizar la API
Probar su aplicación Symfony
  1. Introducción a las pruebas de software
    1. 1. Las pruebas: un elemento esencial para la calidaddel software
    2. 2. Las diferentes categorías de pruebas
      1. a. Pruebas unitarias
      2. b. Pruebas de integración
      3. c. Pruebas funcionales
    3. 3. Analogía
    4. 4. El enfoque de las pruebas en PHP
  2. Pruebas unitarias con PHPUnit
    1. 1. Configuración de pruebas
    2. 2. Regla de escritura de las pruebas
    3. 3. Ejecutar las pruebas
  3. Pruebas funcionales
    1. 1. Diferencia respecto a las pruebas unitarias y de integración
    2. 2. Probar una acción
    3. 3. Objetos para escribir pruebas
      1. a. El objeto Client
      2. b. El objeto Crawler
    4. 4. Enviar un formulario
    5. 5. Para ir más allá
Logging y monitoring con Symfony
  1. Generar registros de actividad con Monolog
    1. 1. Registro de actividad
    2. 2. La librería Monolog
    3. 3. El servicio logger
    4. 4. El archivo de logging
      1. a. Identificar la causa de un error
      2. b. El problema
    5. 5. Handlers
      1. a. Definir varios administradores
      2. b. Enviar los logs por correo electrónico
      3. c. Utilizar un búfer
      4. d. Añadir información adicional
    6. 6. Canales (channels)
      1. a. Añadir sus propios canales
      2. b. Enviar un log a un canal determinado
      3. c. Configurar handlers por canal
      4. d. Gestionar errores 404
  2. Monitoring con Prometheus y Grafana
    1. 1. Un aliado proactivo del logging
    2. 2. Preparar una aplicación Symfony para Prometheus
    3. 3. Instrumentar las mediciones
    4. 4. Para ir más allá
Mejorar el rendimiento
  1. Almacenamiento en caché de páginas
    1. 1. Alrededor del protocolo HTTP
    2. 2. Un servidor proxy inverso o «reverse proxy»
      1. a. HttpCache
      2. b. Nginx
      3. c. Varnish
    3. 3. Cabeceras
    4. 4. Respuestas públicas y privadas
    5. 5. Expiración
      1. a. La cabecera Expires
      2. b. Las directivas max-age y s-max-age
      3. c. La anotación @Cache
    6. 6. Validación
      1. a. Por fecha con Last-Modified
      2. b. Por hash con cabecera ETag
    7. 7. Los ESI
      1. a. Activación
      2. b. Generar una etiqueta ESI
  2. Carga automática de clases
  3. La caché con Doctrine
    1. 1. Los diferentes tipos de caché
    2. 2. Configuración
  4. La caché de anotaciones
  5. Las sesiones
  6. Otras optimizaciones
    1. 1. Elegir su SAPI PHP
      1. a. ¿Qué es una SAPI?
      2. b. Módulo del servidor
      3. c. CGI
      4. d. FastCGI
      5. e. Conclusión
    2. 2. Almacenamiento en caché de OPCodes
      1. a. Los OPCodes
      2. b. Una etapa pesada
      3. c. Caché
    3. 3. Compresión de las respuestas
      1. a. La compresión gzip
      2. b. Precompresión
    4. 4. Optimización de imágenes
      1. a. Validación
      2. b. Expiración
      3. c. Otras técnicas
  7. Prueba del rendimiento de un sitio web
    1. 1. Lado del servidor
      1. a. Apache Bench
      2. b. Xhprof
    2. 2. Lado del cliente
Internacionalizar las aplicaciones Symfony
  1. Introducción
    1. 1. Locale, internacionalización y regionalización
      1. a. Locale
      2. b. Internacionalización
      3. c. Regionalización
    2. 2. Internacionalización en Symfony
  2. Detectar la referencia al locale de un usuario
    1. 1. Las técnicas
      1. a. Negociación de contenido
      2. b. Por la URL
    2. 2. En la práctica
  3. Activación de las traducciones
    1. 1. El componente translator
    2. 2. Configuración del framework
  4. Rutas y traducciones
  5. Archivos de traducción
    1. 1. Organización y reglas de nomenclatura
      1. a. Regla de nomenclatura
    2. 2. Herramientas para crear archivos de traducción
      1. a. Mostrar la lista de traducciones que faltan
      2. b. Generar un archivo de traducción
  6. Traducir un mensaje
    1. 1. El servicio translator
    2. 2. Marcadores de sustitución (placeholders)
    3. 3. Uso en las templates de Twig
Anexos
  1. Crear un comando para la consola
    1. 1. Configurar un comando
    2. 2. Los objetos input y output
    3. 3. El Service Container
    4. 4. Comando de ejemplo
  2. Enviar correos electrónicos con Mailer
    1. 1. El protocolo SMTP
    2. 2. El transporte
      1. a. El transporte smtp
      2. b. El transporte sendmail
    3. 3. Enviar un correo electrónico
  3. Trabajar con sesiones
    1. 1. Introducción
    2. 2. Integrar sesiones en Symfony
    3. 3. Configurar el administrador de copias de seguridad
      1. a. Con PHP
      2. b. Con Symfony
    4. 4. Los mensajes «flash»
  4. Desplegar una aplicación Symfony
    1. 1. Despliegue
    2. 2. ¿Se debe desplegar con FTP?
    3. 3. Las diferentes etapas
    4. 4. Capistrano y Capifony
      1. a. Instalación
      2. b. Configuración
      3. c. Despliegue
    5. 5. Funcionalidades avanzadas
Autor : Etienne Langlet

Etienne Langlet

Etienne LANGLET es un excelente pedagogo, formador y consultor desde hace más de 20 años, tanto en el ámbito del desarrollo como en el de la metodología. Es desarrollador en PHP desde 1999, realiza sus desarrollos con Symfony y ofrece formación sobre este tema desde hace más de 10 años. En este libro, comparte con el lector la experiencia que ha adquirido a lo largo de sus diferentes trabajos y proyectos.


Más información

Descubrir todos sus libros

  • PHP y Symfony Pack de 2 libros: Domine el desarrollo PHP 8 con el framework Symfony 5

Novedades

Ver más