Foros del Web » Programando para Internet » PHP »

Rest API en PHP

Estas en el tema de Rest API en PHP en el foro de PHP en Foros del Web. Hola a todos. Tengo una gran duda. Hace tiempo que no uso php para nada. Tengo una pequeña app web hecha con node/express/sequelize en el ...
  #1 (permalink)  
Antiguo 03/09/2017, 12:42
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 21 años, 5 meses
Puntos: 52
Rest API en PHP

Hola a todos.

Tengo una gran duda.
Hace tiempo que no uso php para nada.

Tengo una pequeña app web hecha con node/express/sequelize en el backend.

Ahora, hace tiempo pague por un servidor web. Y solo soporta php.

Quisiera re-hacer la REST API en php, pero por lo que recuerdo php es muy diferente:
PHP ya es un lenguaje diseñado para la web (aunque se puedan hacer otras cosas con el).
Lo que se me ocurre es que cada uno de mis endpoints en la API sea un archivo php que haga la conexión a la base de datos, y haga la acción especificada y asi.

No tengo la menor idea si esto sea lo mejor.
Investigando un poco me encontré que existen web frameworks en PHP como Cake y otros.

No se que tanta sea la curva de aprendizaje para estos frameworks, y si mi servicio web los soporte.

¿Qué me recomiendan? Recomiendan algún framework? Cual? Por que?
Mi idea de usar simples archivos php es buena, mala?
Hoy en día cual es la tendencia para hacer web apps en php?

Gracias.
Saludos
  #2 (permalink)  
Antiguo 03/09/2017, 18:00
Usuario no validado
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 16
Respuesta: Rest API en PHP

>> ¿Qué me recomiendan? Recomiendan algún framework? Cual? Por que?
He visto diversos frameworks por encima y aunque más de uno puedo decir que tiene mucho mucho por lo que valen la pena, mi gran problema de atender pedidos con urgencia me han llevado a programar algo que mis compañeros de trabajo llaman "el framework de PCID"...

En mi humilde opinión:
- Un framework vale la pena utilizarlo si realmente vas a usarlo.
- Dependiendo del framework, "la primera vez de uso" requerirá más o menos tiempo del programador.

Nota adicional:
Para ser sincero... Prefiero programar las cosas por mi cuenta... Locura de programador de más de 10 años que programa por vicio y oficio y hasta por pasatiempo.


>> Mi idea de usar simples archivos php es buena, mala?
Eso es lo que he hecho yo sin mayores problemas para comunicación con clientes y proveedores de todo tipo...

>> Hoy en día cual es la tendencia para hacer web apps en php?
En esa pregunta te quedo mal... Programador por vicio y oficio pero no llego a ser fanático...

Saludos,

PCID.
  #3 (permalink)  
Antiguo 04/09/2017, 11:45
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Rest API en PHP

Saludo

Bueno, pues en primera, teniendo en cuenta que ya tienes todo hecho,
si tienes la facilidad de pago, sería mejor que contrates un servidor dedicado
y le instalas node y todo lo demás que necesites, digo, para no rehacer nada.

Si por el contrario, insistes en usar tu server php, entonces pregunto lo siguiente:

¿Qué tanto es tu conocimiento de programación orientada a objetos?
Esto porque la mayoría de frameworks que encuentras
estan enfocados con este paradigma, y te serviría bastante
tener ese conocimiento para usarlos
(aunque no necesario si eres paciente y lees tranquilamente la documentación)

En cuanto a tus preguntas.
- Los frameworks están pensados para funcionar en cualquier plataforma,
sea local en tu equipo, o en un servidor externo en la nube o en otra ubicación.

Claramente, los archivos hechos por cuenta propia igualmente,
pero manejar un framework vs los archivos hechos es cuestión
de unas por otras, un ejemplo corto.

Digamos que tu api se conecta a una bd, y hace selects, inserts, updates y deletes.

Si lo haces por cuenta propia, tendrás que crear la conexión a la bd,
y hacer cada query 'a mano'.

Si lo haces con un framework (el que sea) solo configuras la bd,
y luego creas un modelo el cual se comunicará con cada tabla de la bd,
y te olvidas de los querys, simplemente armas un array con los datos,
y llamas a la función adecuada (insert, update o flush, delete) y ya esta.

¿Qué me recomiendan?
Pues si tienes el tiempo del mundo, has por tu cuenta.
Si tienes el tiempo del mundo y quieres aprender de otras cosas,
usa un framework.

Recomiendan algún framework?


Cual?
Yo te recomiendo, si te vas a enfocar en API, Symfony.
O también puedes usar Laravel o Codeigniter.

Con cualquiera de los tres el asunto es similar (lo digo por experiencia propia)
pues todos tres, como te decía inicialmente, usan POO
(programación orientada a objetos)
y se parecen bastante (de hecho Laravel es hijo de Symfony).

Por que?
Bueno, en el caso Symfony es fácil de configurar, y va muy bien para temas API.
En el caso Codeigniter, tiene una muy buena documentación (incluso en español)

Mi idea de usar simples archivos php es buena, mala?
Es ambas.

Buena porque tu sabes todo lo que contienen los archivos
de pleno.
En el caso de los frameworks a veces llamas muchas funcionalidades
ya hechas y que te hacen ganar bastante tiempo en desarrollo
pero de las cuales no ves el código
(a menos que seas bastante curioso)

Mala porque si por ejemplo luego sumas gente que te ayude,
van a tardar más en tareas como modificaciones o mantenimiento
porque tienen que sentarse primero a conocer tu lógica y todo
lo que has hecho.
En el caso de los frameworks ya traen configuración, librerías, helpers,
vistas y demás, todo dentro de una estructura común y conocida
para los que manejen estos frameworks al cambiar de proyecto
no consuman mucho tiempo buscando cada funcionalidad, pues
cada funcionalidad en este caso debe estar en un sitio específico.

Hoy en día cual es la tendencia para hacer web apps en php?
Pues la mayoría de apps están manejando apis, sobre todo en rest,
y estas sirven la información para que la parte front haga lo suyo
sin importar si es el front a través de php, angular, o demás.

Así que ya es cuestión que te sientes con calma a pensar
que tanto va a crecer la aplicación, si te interesa manejar
aplicaciones standars o si prefieres hacer una a gusto,
y el tiempo que tengas para cada cosa.

Suerte con eso.
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #4 (permalink)  
Antiguo 04/09/2017, 22:33
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 21 años, 5 meses
Puntos: 52
Respuesta: Rest API en PHP

Muchas gracias por sus respuestas. Han sido muy útiles.
Solo agregar algunos detalles por si alguien quiere expandir alguna de sus respuestas.

1. Manejo perfectamente la POO.
2. La aplicación es un proyecto mas personal que nada, es decir solo yo le meto mano.
3. No tengo considerado que sea una aplicación que deba escalar mucho. (aunque uno nunca sabe)


Otra pregunta.

He visto que los frameworks traen muchas veces su propio servidor. Y si mal no recuerdo, anteriormente uno usaba los paths configurados en apache y listo.

Tanto en node como en los web frameworks de python, uno también cuenta con su propio servidor, y solo configuras apache para redirigir los requests a una o mas instancias de tu servidor node/python.

En php también se usa ese workflow?

Saludos
  #5 (permalink)  
Antiguo 05/09/2017, 01:04
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Rest API en PHP

Saludo

Bueno, pues en cuanto a los puntos que mencionas,
creo que con mi anterior respuesta basta.

En cuanto al server y el framework, son independientes,
pero obviamente hacen equipo a la hora de trabajar.

En el caso de los frameworks de php,
trabajan perfectamente bajo apache como servidor.

Sin embargo, he visto que muchos frameworks también
estan adaptandose a otros servers (nginx sobre todo),
y pues habría que ver que tal rendimiento tienen bajo
un servidor iis por ejemplo adaptado para interpretar php.

Alguna vez trabajé bajo esa configuración,
pero en ese entonces ni existían los frameworks (hace muchos ciclos...),
entonces habría que probar, pero pues no creo que haya
mucho conflicto salvo funcionalidades específicas.


__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com

Etiquetas: api, rest
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:10.