restful mvc example crear consumir conectar php api rest frameworks

mvc - ¿Necesito un marco para construir una API REST en PHP?



rest api.php github (6)

Ciertamente no necesita ningún tipo de marco para construir una API PHP REST. REST no es más que una convención de protocolo construida sobre HTTP. Como PHP obviamente puede manejar solicitudes HTTP, tiene todo lo que necesita para construir API RESTful.

El objetivo de los marcos es manejar tareas comunes y cosas que de otra manera serían tediosas. Las API REST generalmente se crean con PHP, por lo que existe una plétora de marcos. Personalmente, usaría un marco ligero como slim simplemente para manejar cosas como enrutamiento URI, análisis / limpieza de datos de solicitud y generación de respuestas.

Soy bastante nuevo en PHP (alrededor de 8 meses). Estoy construyendo una aplicación web, que está casi lista para la versión beta. Solo ahora estoy empezando a pensar en lo que necesitaría hacer para crear una versión móvil de la aplicación.

Según entiendo, debería estar construyendo una API REST (corrígeme si me equivoco). Actualmente NO estoy usando un marco PHP para mi aplicación web. Debería ser?

¿Debo comenzar a usar un marco para poder implementar más fácilmente mi API? ¿O puedo construir mi API sin ningún framework?


El mundo es muy grande, por lo tanto, nadie puede hacer todas las cosas solo. Alguien ayudará a alguien (que haga algo nuevo) a hacer algo viejo. Esta es la razón, libray y FW existen en nuestro mundo de TI.

En producción / entorno en vivo, cualquier cosa es mucho más compleja de lo que creemos. Hasta un día en el futuro, tendremos que construir muchas cosas para nuestro proyecto, y veremos que esas cosas las ha construido completamente FW.

Aunque solo un servidor REST, con PHP puro, necesitamos resolver problemas con: enrutamiento URI, análisis / limpieza de datos de solicitud, acceso a datos, administración de dependencias, generación de respuestas, bla bla bla ...

Recomiendo usar Slim o Phalcon (Micro App). Slim es un método fácil y rápido, pero Phalcon es un método efectivo y de alto rendimiento.


No, no es necesario un marco para construir una API REST, pero es muy recomendable, ya que un marco bien construido puede encargarse de cosas que pueden ser muy difíciles y complicadas, como autenticaciones de sesión y almacenamiento en caché y arquitectura bien separada. Reinventar la rueda solo te lleva tan lejos.

Soy un desarrollador de Wave Framework que fue desarrollado teniendo en cuenta un diseño centrado en API (lea más here ). Te animo a echar un vistazo a este marco y ver si podría ser algo que podría ayudarte. Tiene un pequeño grupo de desarrolladores, pero lentamente está ganando reconocimiento.

Te animo a echar un vistazo a eso y si puede satisfacer tus necesidades.


REST es más una ideología de diseño que un marco de lenguaje, por lo que NO NECESITA usar ningún marco. Sin embargo, no hay ninguna ventaja en la reinvención de la rueda (seguro que hay algunas desventajas, como seguridad, estructura, etc.).

Si quieres evitar el caos de MVC (que no es una especificación obligatoria de una arquitectura REST), puedes utilizar cualquier mico-framework PHP (Slim, Lumen, etc.) que son muy rápidos de aprender e implementar y permiten al desarrollador de PHP escribir aplicaciones basadas en rutas. (similar a los de MEAN y Express) ahorrando mucho a tiempo.

La mayoría de estos frameworks también vienen con un MVC, pero si no quieres dar un CMS para la API, MR (Model-Routes) es lo suficientemente bueno (y prácticamente el mejor) para todas las necesidades de REST.

Desde el comienzo de los frameworks angulares que permiten que su sitio web se comunique con sever como cualquier otra API fácilmente, creo que incluso el CMS debe acceder a la API como cualquier otra aplicación solo con derechos elevados o puntos finales específicos.


También hay herramientas que crean una API REST desde el DB sin la necesidad de código adicional.

Si está usando Postgres existe el excelente programa postgREST que

sirve una API completamente RESTful desde cualquier base de datos PostgreSQL existente. Proporciona una API más limpia, más compatible con los estándares y más rápida de lo que es probable que escriba desde cero.


RESPUESTA CORTA No, no necesitas un marco para alcanzar tu objetivo.

PERO, sin embargo, será mucho más fácil si usa un marco para administrar su API. Le sugiero que busque un marco liviano y quizás también pueda convertir fácilmente su aplicación web al marco, teniendo una "aplicación" para devolver dos "cosas" diferentes (material web y API).

Eche un vistazo a la API REST basada en Laravel , Laravel 4 o una lista de frameworks api populares de php rest que se pueden usar para compilar uno.