Cuando piensas en el desarrollo de la web, además de HTML, CSS y JavaScript, el lenguaje PHP es uno de los nombres que vienen a la mente.
En contra de la creencia popular, PHP no está muerto. Todavía es ampliamente utilizado por sitios, incluyendo grandes nombres como Facebook y Wikipedia.
De acuerdo con W3Techs, PHP es usado por alrededor del 79% de todos los sitios web. Es ocho veces más popular que ASP.NET, su rival más cercano en los lenguajes de programación del lado del servidor (server-side).
La cuota de uso de PHP se ha mantenido constante durante el último año.
Los programadores de PHP a menudo recurren a un framework de PHP para componer su código. Averigüemos qué son los frameworks de PHP, por qué se usan, y examinemos algunos de los más populares.
¿Qué es un framework PHP?
Un framework PHP es una plataforma para crear aplicaciones web PHP. Los frameworks de PHP proporcionan bibliotecas de código para funciones de uso común, reduciendo la cantidad de código original que necesitas escribir.
¿Por qué se utiliza un framework PHP?
Hay muchas buenas razones para la utilización de los frameworks de PHP en lugar de codificar desde cero
1. Desarrollo más rápido
Debido a que los frameworks de PHP tienen bibliotecas y herramientas incorporadas, el tiempo requerido para el desarrollo es menor.
Por ejemplo, el framework de CakePHP tiene la herramienta de línea de comandos Bake, que puede crear rápidamente cualquier código esqueleto que necesites en tu aplicación.
Varios de los frameworks populares de PHP tienen la biblioteca PHPUnit integrada para facilitar las pruebas.
2. Menos código para escribir
El uso de funciones que están incorporadas al framework significa que necesitas escribir menos código original.
3. Bibliotecas para tareas comunes
Muchas de las tareas que los desarrolladores tienen que hacer con las aplicaciones web son comunes. Por ejemplo, la validación de formularios, la limpieza de datos y las operaciones CRUD (Crear, Leer, Actualizar y Borrar). En lugar de tener que escribir tus propias funciones para estas tareas, puedes simplemente utilizar las que forman parte del framework.
4. Sigue las buenas prácticas de codificación
Los frameworks PHP suelen seguir las mejores prácticas de codificación. Por ejemplo, dividen el código claramente en varios directorios según la función.
Te obligan a organizar el código de una forma más limpia, ordenada y sostenible.
Los frameworks también tienen sus propias convenciones de nombres para las entidades que debes seguir.
5. Más seguro que escribir tus propias aplicaciones
Hay muchas amenazas de seguridad de PHP, incluyendo la secuencia de comandos en sitios cruzados, los ataques de inyección SQL y la falsificación de petición en sitios cruzados. A menos que tomes las medidas adecuadas para asegurar tu código, tus aplicaciones web PHP serán vulnerables.
El uso de un framework PHP no es un sustituto para escribir código seguro, pero minimiza la posibilidad de ataques de hackers. Los buenos frameworks tienen incorporadas la limpieza de datos y defensas contra las amenazas comunes mencionadas anteriormente.
6. Mejor trabajo en equipo
Los proyectos con múltiples desarrolladores pueden salir mal si no hay transparencia en:
- Documentación
- Decisiones de diseño
- Normas del código
El uso de un framework establece reglas claras para tu proyecto. Incluso si otro desarrollador no está familiarizado con el framework, debe ser capaz de aprender rápidamente las reglas y trabajar en colaboración.
7. Más fácil de mantener
Los frameworks PHP fomentan la refactorización del código y promueven el desarrollo DRY (Don’t Repeat Yourself). La base de código resultante es más sencillo y necesita menos mantenimiento.
Tampoco tienes que preocuparte por mantener el framework central, ya que eso lo hacen por ti los desarrolladores.
Lo que necesitas saber antes de usar un framework PHP
¡La primera cosa que necesitas saber antes de usar un framework PHP es el propio PHP! Si no tienes un buen dominio del lenguaje, te costará mucho trabajo aprender un framework. La mayoría de los frameworks funcionan con la versión 7.2 o posterior de PHP.
Si necesitas repasar tu PHP, lee estos artículos:
A continuación, deberías haber construido algunas de tus propias aplicaciones PHP, para que tengas un claro entendimiento de lo que se requiere en el frontend y el backend.
Conocer el PHP orientado a objetos es también una necesidad, ya que la mayoría de frameworks modernos de PHP son orientados a objetos. Asegúrate de que entiendes conceptos como clases, objetos, herencia, métodos, rasgos y modificadores de acceso.
Dado que muchas aplicaciones web se conectan a una base de datos, deberías conocer las bases de datos y la sintaxis SQL. Cada framework PHP tiene su propia lista de bases de datos soportadas.
Es útil comprender un modelo de mapeo de mapeo objeto-relacional (ORM). ORM es un método para acceder a los datos de la base de datos usando la sintaxis orientada a objetos en lugar de usar SQL. Esto significa que puedes escribir tus consultas a la base de datos en el conocido PHP, aunque puede haber ocasiones en las que querrás utilizar SQL.
Muchos frameworks PHP tienen su propio ORM incorporado. Por ejemplo, Laravel usa el ORM Elocuente. Otros usan un ORM de código abierto como Doctrine.
Entender cómo funcionan los servidores web como Apache y Nginx es útil. Es posible que tengas que configurar los archivos del servidor para que tu aplicación funcione de manera óptima.
Probablemente harás gran parte de tu desarrollo localmente, por lo que necesitas saber sobre el localhost, también. Otra opción es crear y probar tu aplicación en un entorno virtual usando Vagrant y VirtualBox
La arquitectura del Modelo Vista Controlado
Los frameworks PHP típicamente siguen el patrón de diseño del Modelo-vista-controlador (MVC). Este concepto separa la manipulación de los datos de su presentación.
El Modelo almacena la lógica de negocio y los datos de la aplicación. Pasa los datos a la Vista, la capa de presentación. El usuario interactúa con la Vista y puede introducir instrucciones a través del Controlador. El Controlador pasa estos comandos al Modelo, y el ciclo continúa.
En resumen, el Modelo consiste en datos, la Vista es sobre la apariencia y el Controlador es sobre el comportamiento.
Una analogía del patrón MVC es como pedir un cóctel en un bar.
El usuario es el patrón que llega al bar (el View) para tomar un cóctel. El usuario El usuario pide su bebida al camarero (el Controlador).
El Controlador hace el pedido usando el Modelo: la receta, los ingredientes y el equipo. Dependiendo del cóctel, pueden usar cualquiera de los siguientes ingredientes, u otros:
- Alcohol
- Jugo de frutas
- Hielo
- Limón
- Vaso
- Coctelera
- Olive
- Agitador
El cóctel terminado se sirve en la barra para que el usuario lo disfrute. Si el usuario quiere otra bebida, debe hablar primero con el Controlador. No se les permite acceder al Modelo y mezclar su propia bebida.
En términos de la aplicación PHP, el MVC podría corresponder a lo siguiente:
- Modelo: una base de datos
- Vista: una o varias páginas HTML
- Controlador: funciones para acceder y actualizar la base de datos
Sentirse cómodo usando una interfaz de línea de comandos (CLI) ayuda cuando se usa un framework PHP. Laravel tiene su propia CLI, la Consola Artisan. Usando el comando «make» en Artisan puedes construir rápidamente modelos, controladores y otros componentes para tu proyecto.
La familiaridad con la línea de comandos también es clave para usar el administrador de paquetes PHP Composer . El Yii Framework es uno de los varios que usa Composer para instalar y administrar dependencias, paquetes que son necesarios para que una aplicación se ejecute.
Packagist es el principal repositorio de paquetes que puedes instalar con Composer. Algunos de los paquetes más populares de Composer funcionan con el framework Symfony.
¿Qué deberías buscar en un framework PHP?
Aquí tienes algunos factores que debes considerar al elegir el mejor framework de PHP para tu proyecto.
En primer lugar, si eres nuevo en un framework PHP, la curva de aprendizaje no debería ser demasiado empinada. No querrás invertir un tiempo precioso en el aprendizaje de un framework si es demasiado difícil de entender. Por suerte, PHP es uno de los mejores lenguajes de programación para aprender.
Luego, quieres un framework que sea fácil de usar y que te ahorre tiempo.
Un framework de PHP debe cumplir con tus requisitos técnicos para un proyecto. La mayoría de los frameworks tendrán una versión mínima de PHP y ciertas extensiones de PHP con las que trabajan. Asegúrate de que tu framework soporta tú(s) base(s) de datos preferida(s), y que puedes usar el framework con el servidor web en el que quieres desplegarlo.
Elige un framework con el equilibrio adecuado de características. Un framework rico en características puede ser una ventaja para algunos proyectos. Por otro lado, si no necesitas muchas características, elige un framework que sea despojado y minimalista.
Algunas características deseables son:
- Prueba
- Almacenamiento de la caché
- Motor de plantillas: una forma de producir PHP dentro de HTML usando una clase de PHP
- Seguridad
Si necesitas construir una aplicación que sea escalable, selecciona un framework que lo soporte.
Finalmente, una buena documentación y soporte son importantes para que puedas sacar el máximo provecho de tu framework PHP. Un framework con una comunidad grande y vibrante también es más probable que resista el paso del tiempo y también es capaz de ayudarle cuando te encuentres con dificultades.
Lectura recomendada: Cómo Mejorar el Límite de Memoria PHP en WordPress.
¿Cuáles son los mejores frameworks PHP en 2024?
Es difícil conseguir una lista definitiva de los frameworks PHP. Wikipedia tiene una lista de 40 frameworks PHP, pero algunos de ellos se describen mejor como sistemas de gestión de contenidos, y sin duda hay muchos más.
Los primeros frameworks PHP incluyen PHPlib, Horde y Pear. La mayoría de los grandes nombres fueron lanzados en 2005 o más tarde.
Aquí tienes algunos de los mejores frameworks de PHP en uso hoy en día.
Laravel
Laravel está catalogado como «El framework PHP para artesanos de la web». Fue desarrollado por Taylor Otwell, quien quería un framework con elementos que CodeIgniter no tenía, como la autenticación de usuario.
Especificaciones rápidas
Lanzamiento: Junio de 2011
Versión actual: 8, publicada el 8 de septiembre de 2020.
Requisitos técnicos:
- PHP >= 7.2.5 (o usar Laravel Homestead)
- Compositor instalado
- Soporte de base de datos para MySQL 5.6+, PostgreSQL 9.4+, SQLite 3.8.8+, SQL Server 2017+.
Las ventajas de Laravel
Es fácil empezar con Laravel Homestead, un entorno de desarrollo virtual hecho para ti.
Laravel Homestead es una caja Vagrant oficial y preempaquetada que te proporciona un maravilloso entorno de desarrollo sin necesidad de instalar PHP, un servidor web y cualquier otro software de servidor en tu máquina local. ¡Ya no tendrás que preocuparte por estropear tu sistema operativo!
Si eres un usuario de Mac, también tienes la opción de usar Laravel Valet como tu entorno de desarrollo. Por cierto, Laravel Valet es compatible con Symfony, CakePHP 3, Slim y Zend, así como con WordPress.
Laravel utiliza un motor de plantillas llamado Blade. Una ventaja que tiene sobre otros motores de plantillas es que puedes usar PHP dentro de Blade, lo que no puedes hacer con los otros.
Packalyst, una colección de paquetes Laravel, tiene más de 15.000 paquetes que puedes usar en tus proyectos.
Laravel proporciona una gama de características y métodos de seguridad, que incluyen las siguientes:
- Autenticación
- Autorización
- Verificación del correo electrónico
- Cifrado
- Hashing
- Restablecer la contraseña
El Elocuente ORM y el Fluent Query Builder de Laravel protegen contra los ataques de inyección SQL al utilizar la vinculación de parámetros PDO. La protección Cross-Site Request Forgery (CSRF), que utiliza un token de formulario CSRF oculto, también está activada de forma predeterminada.
La herramienta de línea de comandos de la consola Artisan que tiene Laravel acelera el desarrollo al permitir a los desarrolladores automatizar tareas repetitivas y generar rápidamente el código del esqueleto.
Cuando hicimos las pruebas de benchmarking de PHP, Laravel fue el más rápido de los frameworks de PHP que probamos.
El ecosistema de Laravel cuenta con varias herramientas útiles como Mix para la compilación de los activos de CSS y JS, y Socialite para la autenticación de OAuth.
Laravel se beneficia de una gran comunidad de desarrolladores (como WordPress). Puedes encontrarlos en:
- Laracasts: un portal de aprendizaje con cursos, blog, podcast y foro.
- Laravel.io: un portal comunitario con más de 45.000 usuarios.
- El subreddit de Laravel: hogar de 50.000 artesanos de Laravel.
¿Quiénes utilizan Laravel?
- Archivo de Vogue – moda
- Ascot – hipódromo
- Camping World RV & Outdoors – venta al por menor
- Restaurants.com – motor de búsqueda de restaurantes
- Barchart – acciones y participaciones
- Visita Maine – turismo
- Fischer Homes – construcción
- Explorar Georgia – turismo
Symfony
Symfony es al mismo tiempo un framework de PHP como una colección de componentes de PHP para la construcción de sitios web.
Especificaciones rápidas
Lanzamiento: Octubre de 2005
Versión actual: 5.1.4
Requisitos técnicos:
- PHP >= 7.2.5
- Compositor instalado
Las ventajas de Symfony
Symfony es una excelente opción para sitios web y aplicaciones que necesitan ser escalables. Su sistema de componentes modulares es muy flexible y te permite elegir los componentes que necesitas para tu proyecto.
Symfony soporta la mayoría de las bases de datos de los frameworks populares de PHP:
- Llovizna
- MySQL
- Oracle
- PostgreSQL
- SAP Sybase SQL Anywhere
- SQLite
- SQLServer
La mejor manera de interactuar con tus bases de datos es a través de la Doctrina ORM. Symfony utiliza mapeadores de datos para asignar objetos a la base de datos. Esto mantiene el modelo de objetos y el esquema de la base de datos separados, lo que significa que si se cambia una columna de la base de datos no es necesario hacer muchos cambios en la base de datos.
La depuración de los proyectos Symfony es sencilla con la barra de herramientas incorporada.
Symfony utiliza el motor de plantillas Twig, que es fácil de aprender, rápido y seguro.
Packagist enumera más de 4.000 paquetes Symfony disponibles para que los descargues y los utilices.
Symfony tiene el respaldo comercial de los Laboratorios Sensio. Esto significa que hay soporte profesional disponible, a diferencia de la mayoría de los otros frameworks PHP. También tiene versiones de soporte a largo plazo que tienen 3 años completos de soporte.
Los desarrolladores de Symfony pueden educarse y obtener ayuda a través de múltiples canales:
- Documentación completa
- La Universidad de Sensio Labs, la plataforma de e-learning de Symfony
- SymfonyCasts
- Certificación Symfony
- Conferencias Symfony
Además, la Comunidad Symfony es enorme, con más de 600.000 desarrolladores activamente involucrados.
¿Quiénes utilizan Symfony?
- Sainsbury’s Magazine – editorial
- Intelius – busca datos públicos sobre las personas
- Sitio web de Sony VAIO UK – venta al por menor
- Tienda Sabatier – venta al por menor
- Distrito de los Pies – venta al por menor
- Premio Nobel de la Paz
Otros grandes nombres usan componentes Symfony dentro de sus proyectos, incluyendo Drupal, Joomla y Magento.
CodeIgniter
El framework CodeIgniter te ayuda a construir aplicaciones web rápidamente, ya que tiene una configuración mínima.
Especificaciones rápidas
Lanzamiento: Febrero de 2006
Versión actual: 4.0.3
Requisitos técnicos:
- PHP >= 7.2
- Soporte de base de datos para MySQL, PostgreSQL, SQLite3
Ventajas de CodeIgniter
El CodeIgniter es conocido por su velocidad. Fue el segundo más rápido de los cuatro frameworks PHP que probamos en nuestras pruebas de benchmarking de PHP.
La huella ligera del framework (descarga de 1.2 MB) significa que no hay hinchazón. Puedes añadir exactamente los componentes que necesitas.
CodeIgniter es flexible: fomenta el desarrollo con la arquitectura MVC, pero también puedes codificar aplicaciones no MVC.
El framework incluye defensas contra los ataques CSRF y XSS, además de escapes sensibles al contexto y una Política de Seguridad de Contenidos.
CodeIgniter soporta múltiples métodos de caching, acelerando tus aplicaciones.
Como se ha señalado anteriormente, el CodeIgniter tiene una curva de aprendizaje fácil en comparación con otros frameworks y es bastante extensible.
La comunidad de CodeIgniter consiste en un foro y un grupo de Slack.
¿Quiénes utilizan el CodeIgniter?
- G-Shock – venta al por menor
- WooBox – marketing
- Buffer – tecnología
- TestandTrack – educación
- Casio – tecnología
- Bike Easy – exteriores
- Barracuda – seguridad informática
- FuelCMS – sistema de gestión de contenidos
Zend Framework / Laminas Project
El Framework Zend es un framework PHP establecido desde hace mucho tiempo que ahora está en transición hacia el Proyecto Laminas. Se recomienda seriamente la migración a Laminas, ya que Zend ya no está actualizado.
El Proyecto Láminas consta de 3 partes:
- Componentes de las láminas y MVC
- Mezzio
- Herramientas API de Laminas
Especificaciones rápidas
Lanzamiento: Marzo de 2006
Versión actual: 3.0.0 (Zend) o 1.3.0 (Láminas)
Requisitos técnicos:
- PHP >= 5.6 (Zend) o >=7.3 (Láminas)
- Compositor instalado
- Soporte de bases de datos para MariaDB, MySQL, Oracle, IBM DB2, Microsoft SQL Server, PostgreSQL, SQLite, e Informix Dynamic Server.
Pros de Zend/Laminas
El Framework Zend ha tenido más de 570 millones de instalaciones. También es el framework PHP más utilizado por las empresas.
Zend sigue los estándares del PHP Framework Interop Group (PHP-FIG), lo que significa que su código puede ser portado a otros frameworks sin dificultad.
Como Symfony, puedes usar solo los componentes que necesitas.
Puedes usar Zend para construir APIs RESTful.
La comunidad de Laminas tiene un foro y un grupo de Slack para la colaboración y el soporte.
¿Quiénes utilizan Zend/Laminas?
Según la página web de Zend, el framework ha sido utilizado por grandes empresas, incluyendo
- BBC – medios de comunicación
- BNP Paribas – finanzas
- Cisco Webex – videoconferencia
Yii (Framework)
El nombre de este framework, Yii, significa «simple y en evolución» en chino. También significa «Sí, lo es».
Especificaciones rápidas
Lanzamiento: Diciembre de 2008
Versión actual: 2.0.35
Requisitos técnicos:
- PHP >= 5.4.0, 7+ recomendado
- Compositor instalado
- Soporte de bases de datos para SQLite, MySQL, PostgreSQL, MSSQL, o bases de datos Oracle
Pros de Yii
Puedes poner Yii en marcha en cuestión de minutos. La documentación está bien escrita y es fácil de seguir.
El framework Yii tiene varias medidas de seguridad, como el cifrado de las contraseñas, la codificación, la autenticación y la autorización. La documentación ofrece las mejores prácticas para prevenir los ataques de inyección SQL, XSS y CSRF.
El generador de código Gii puede construir rápidamente el código del esqueleto para ti, ahorrando tiempo.
Yii soporta cuatro tipos de cacheo para acelerar las aplicaciones web: cacheo de datos, cacheo de fragmentos, cacheo de páginas y cacheo HTTP.
Puedes ejecutar código de terceros dentro de los proyectos Yii.
La comunidad Yii ofrece soporte en vivo a través de Slack o IRC. También hay un foro de discusión y canales de medios sociales. La comunidad recompensa a sus miembros activos con insignias y entradas en el Salón de la Fama.
¿Quiénes utilizan Yii?
- Crowdcube – plataforma de crowdfunding
- WordCounter – herramienta de edición
- ¿Qué? – sitio web del consumidor
- Púrpura – venta al por menor
- YMCA – sin fines de lucro
- Pastebin – herramienta online
- Eventos rápidos de la compañía – eventos en vivo y virtuales
CakePHP
CakePHP sirve para un desarrollo rápido y limpio de PHP.
Especificaciones rápidas
Lanzamiento: Abril de 2005
Versión actual: 4.1.1
Requisitos técnicos:
- PHP 7.2 (mínimo), 7.4 recomendado
- Servidor HTTP con mod_rewrite preferido
- Soporte de base de datos para MySQL 5.6+, MariaDB 5.6+, PostgreSQL 9.4+, SQLite 3.8, SQL Server 2012+.
Las ventajas de CakePHP
La configuración es mínima. No tienes que jugar con los archivos XML o YAML. Una vez que configures tu base de datos puedes empezar a codificar.
CakePHP tiene su propio ORM incorporado, que es rápido y simple de usar.
Las características de seguridad incluyen métodos de encriptación, hashing de contraseñas, protección de datos de formularios y protección de CSRF.
Los componentes y ayudantes de CakePHP simplifican el desarrollo y reducen el número de tareas peatonales que debes hacer.
Github tiene una útil lista de recursos y plugins de CakePHP.
Puedes aprender CakePHP a través del libro de recetas(documentación), formación online y conferencias de CakeFest.
Puedes encontrar amigables panaderos de CakePHP a través de sus foros, Stack Overflow, IRC, y Slack. El soporte profesional también está disponible en Cake DC, dirigido por el fundador de CakePHP Larry Masters.
¿Quiénes utilizan CakePHP?
- Visit NC – turismo
- 10 Dedos Rápidos – educación
- Coconala – mercado de e-learning
- GoodFirms – mercado de software
- Printivo – comercio electrónico
- Citizens, Inc – finanzas
Slim
Slim es un framework de micro PHP, ágil y simplificado, creado por Josh Lockhart. Se centra en recibir una solicitud HTTP, invocar una devolución de llamada y devolver una respuesta HTTP.
Especificaciones rápidas
Lanzamiento: Septiembre de 2010
Versión actual: 4.5.0
Requisitos técnicos:
- PHP 7.2 +
- Servidor web con reescritura de URL
Las ventajas de Slim
La base de código de Slim es sencilla, ya que no tiene dependencias de terceros. Como resultado, es muy rápida.
Slim es particularmente adecuado para construir pequeñas aplicaciones y APIs. Si necesitas más del framework, Slim se integra tanto con componentes de primera como de terceros.
Slim es fácil de aprender y entender. Puedes tener una aplicación de «Hola Mundo» funcionando en minutos.
Slim está clasificado como el mejor framework de PHP por los desarrolladores en el sitio de comparación de Slant.
El apoyo profesional para Slim está disponible en Tidelift.
¿Quiénes utilizan Slim?
- Top Web Comics – publicación
- Principios caninos – entrenamiento
- CG Forge – educación
- Academia Betterplace – educación
Phalcon
Phalcon es un framework PHP construido para la velocidad. Se entrega como una extensión de servidor web escrito en Zephir y C. No es necesario tener conocimientos de C. Los desarrolladores trabajan con las clases de PHP y los espacios de nombres que el framework genera.
Especificaciones rápidas
Lanzamiento: Noviembre de 2012
Versión actual: v5
Requisitos técnicos:
- Extensión de la PSR
- PHP 7.4 + (se recomienda la última versión)
Las ventajas de Falcón
Phalcon está diseñado para correr rápido, ya que tiene las siguientes características:
- Arquitectura de bajo nivel.
- Una carga única de Zephir, extensiones C y PHP.
- El código se recopila en lugar de ser interpretado, por lo que es más rápido.
- Residente de la memoria, lo que significa que puede ser llamado cuando sea necesario.
- No utiliza lecturas y estadísticas de archivos, a diferencia de la mayoría de los otros frameworks PHP, lo que resulta en un mejor rendimiento.
Como Phalcon está ligeramente acoplado, puedes crear tu propia estructura de directorios. El código de Phalcon no vive en el directorio del proyecto, lo que hace que el código sea ligero.
El componente de seguridad de Phalcon ayuda con el hash de la contraseña y la protección CSRF.
El motor de plantillas de Phalcon, Volt, es extremadamente rápido y viene con clases de ayuda para crear vistas fácilmente.
Puedes buscar soporte para Phalcon a través de su documentación, foros, Discord chat, Stack Overflow, y múltiples plataformas de medios sociales.
¿Quiénes utilizan Falcón?
De acuerdo con el sitio Phalcon BuiltWith, Phalcon es utilizado por:
- Learny Online – aprender
- Superando la inteligencia – analítica
- Marchi Auto – concesionario de coches
FuelPHP
FuelPHP es un framework de PHP impulsado por la comunidad con más de 300 contribuyentes a lo largo de su vida.
Especificaciones rápidas
Lanzamiento: Junio de 2011
Versión actual: 1.8.2
Requisitos técnicos:
- PHP 5.4+
- Cualquier servidor web
Ventajas del FuelPHP
El FuelPHP usa MVC pero también soporta HMVC (Hierarchical Model View Controller). Esto añade otra capa entre el Controlador y la Vista. Las ventajas del patrón de diseño HMVC son:
- Mejor organización del código
- Mayor modularidad
- Más extensible
- Fomenta la reutilización del código
Puedes elegir la estructura de archivos y carpetas que desees para tu proyecto, ya que hay pocas limitaciones. FuelPHP se toma muy en serio la seguridad, con las siguientes características:
- Codificación de salida
- Protección del FCRS
- Filtrado de entrada, URI y XSS
- Escapando de la entrada del usuario pasado a las sentencias SQL
FuelPHP tiene su propia utilidad de línea de comandos, el aceite, que se puede usar para ejecutar tareas, depurar código y generar componentes comunes.
El FuelPHP ORM es potente y a la vez ligero.
Puedes unirte a la comunidad FuelPHP en sus foros y en Facebook y Twitter.
¿Quiénes utilizan FuelPHP?
- Wan Wizard – Harro Verton, uno de los desarrolladores de FuelPHP
- Recepción – sistema de gestión de la propiedad
Fat-Free Framework
Al igual que Slim, Fat-Free Framework (F3) es un micro-framework. Su objetivo es lograr un equilibrio entre las características útiles, la simplicidad, la facilidad de uso y la velocidad.
Especificaciones rápidas
Lanzamiento: 2009
Versión actual: 3.7.2
Requisitos técnicos:
- PHP 5.4+
- Cualquier servidor web
- Soporte de base de datos para MySQL, SQLite, MSSQL/Sybase, PostgreSQL y MongoDB.
Ventajas de Fat-Free Framework
La base de código es de unos 65Kb, así que es rápido. Sin embargo, el F3 todavía tiene toda la funcionalidad que te podrías esperar. Puedes extenderlo como quieras con los plugins opcionales.
Es muy fácil de aprender Fat-Free Framework. No hay necesidad de usar Composer, curl, o un inyector de dependencia para empezar. Puedes crear una aplicación de Hello World en minutos.
Casi todo el framework es modular, por lo que solo puedes usar las partes que necesitas para construir tus aplicaciones web. F3 no incluye código por defecto que no necesites, manteniendo tus aplicaciones al mínimo.
La documentación es clara y fácil de seguir, con muchos ejemplos. Fat-Free Framework ofrece la posibilidad de elegir el motor de plantillas: puede utilizar PHP, el motor de plantillas propio de F3, u otros como Smarty o Twig.
Los desarrolladores de F3 se reúnen en el Grupo Google Fat-Free Framework.
¿Quiénes utilizan Fat-Free Framework?
- Malwarebytes Empleo – reclutamiento
- Eve University Dev Pathfinder – juegos
- Andiamo – reclutamiento
- Baker Online – venta al por menor
- Eloquens – negocios
- Especificaciones de PC – tecnología
¿Cuál es el mejor framework PHP para principiantes?
Los mejores frameworks para los principiantes son los que son más sencillos y más ligeros. Una vez que hayas perfeccionado uno de ellos, estarás listo para graduarte en uno que tenga más características, si lo necesitas.
Yii sería mi mejor opción para un framework de PHP para principiantes. La documentación de Yii te guía a través de la creación de una aplicación para ver países, enseñándote sobre el patrón MVC, y cómo trabajar con bases de datos a lo largo del camino.
Si cometes un error, los errores son claros, lo que te ayuda a depurar y continuar rápidamente.
El framework Slim es rápido y fácil de instalar. Slim tiene un tutorial de la Primera Aplicación para la versión 3 del framework. Desafortunadamente, no ha sido actualizado a la versión 4 de Slim, la versión actual.
Para el Fat-Free Framework, tienes la opción de instalarlo a través de Composer o simplemente descargando y descomprimiendo un archivo zip. El framework se configura con un simple programa «Hello World».
La guía del usuario te lleva paso a paso a través de las cosas que necesitas saber, desde el enrutamiento hasta la prueba de la unidad. También hay una demostración del CMS para que puedas ver cómo encajan todas las piezas.
CodeIgniter también tiene una configuración bastante fácil con buena documentación. Su tutorial de la Primera Aplicación construye un simple CMS con funciones CRUD que incluye noticias.
Resumen
Si quieres reducir el tiempo que pasas desarrollando tus aplicaciones web PHP, usar un framework es una elección inteligente.
Para sacar el máximo provecho de un framework de PHP, y evitar la frustración, asegúrate de tener un conocimiento decente de PHP y de entender los conceptos fundamentales detrás de frameworks: la arquitectura MVC, la sintaxis orientada a objetos, las bases de datos y ORMs, y la línea de comandos.
El framework por el que te decantes dependerá del tipo de aplicación que estés construyendo. Hay frameworks PHP para todos los gustos, desde el ultra-mínimo hasta «todo menos el fregadero de la cocina». Esperemos que este artículo te haya ayudado a encontrar el framework PHP perfecto para ti.
Ahora volviendo a ti: ¿cuál es tu framework preferido de PHP y por qué? ¡Háznoslo saber en los comentarios de abajo!
Deja una respuesta