php - tutorial - backbone significado
¿Se puede usar una solución de persistencia REST con backbone.js... en PHP? (6)
¿Entiendes cómo funciona CRUD internamente? Desde un punto de vista de PHP, podría ser tan fácil como tener una declaración de cambio sobre cada posibilidad de llamada REST.
Vea esta página aquí: http://www.codethinked.com/building-epic-win-with-backbone-js
Pase a la sección titulada "Cableado hasta el servidor".
Su script PHP simplemente tiene que satisfacer esos requisitos.
Un código prototipo simple:
switch($_SERVER[''REQUEST_METHOD'']){
case ''POST'':
// create new item
break;
case ''GET'':
// get item(s)
break;
case ''PUT'':
// update item
break;
case ''DELETE'':
// delete item
break;
}
También deberá configurar un archivo .htaccess
la siguiente manera (para manejar el acceso a direcciones URL no existentes):
# Turn on rewrite engine and redirect broken requests to index
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L,QSA]
</IfModule>
Una URL como http://mysite.com/1
no existe realmente, por lo que necesita enrutar.
Edición: En caso de que esté planeando utilizar PUT o DELETE en formularios HTML, olvídelo. Al momento de escribir esto, no se ha aceptado en HTML5, y casi todos los navegadores no lo admiten. Mi "solución" a esto es usar GET
para las solicitudes GET
, y POST
para el resto ( POST
, PUT
y DELETE
). Ejemplo:
<form action="POST" action="/users/5">
<input type="hidden" name="method" value="DELETE"/>
<button>Delete User #5</button>
</form>
Sin embargo, esto no es un problema con AJAX, ya que aparentemente puede configurar el Método XMLHttpRequest a cualquier cosa que desee sin problemas.
Comenzaré diciendo que soy un programador de mierda, estoy seguro de que lo que quiero hacer podría hacerse en 10 líneas de nodo o Rails o algo más, pero PHP es lo que tengo disponible.
Por lo tanto, espero encontrar una biblioteca PHP simple que envuelva las llamadas de la base de datos en una API que parezca similar al modelo RESTful.
He tenido poco éxito al tratar de encontrar algo así: la búsqueda de PHP CRUD
o PHP REST
muestra varias millones de páginas, y no tengo idea de cómo filtrarlas.
Realmente estoy tratando de mantener las cosas simples aquí, no quiero un gran marco como Zend o algo así. Los modelos con los que estoy tratando en Backbone son realmente simples. Solo quiero enviar GET
a, por ejemplo, /notes/3
o POST
s a /notes
, etc., y hacer que PHP haga lo correcto en una base de datos.
Quizás estoy pidiendo demasiado, pero me parece que esto es lo que ofrecen otros marcos como Rails. ¿Alguna sugerencia? TIA ...
Hay muchos marcos de trabajo completos para PHP, eche un vistazo here y here .
Personalmente me gusta el fat-free-framework pero necesitas PHP 5.3 para ello. También hay un montón de soporte para Tonic y Recess parece bastante interesante.
Además, todos los marcos estándar tienen algún tipo de soporte de descanso (zend, ignición de código, Symfony y los "me gusta")
Usted debe encontrar su ajuste ..
Además, si ya tiene listas sus consultas de mysql, puede convertir los resultados de mysql directamente en json de esta manera:
function recordSetToJson($mysql_result) {
$rs = array();
while($rs[] = mysql_fetch_assoc($mysql_result)) {
// you don´t really need to do anything here.
}
return json_encode($rs);
}
Después de eso es bastante fácil asociarse con urls ..
De: Convertir el conjunto de registros MySQL a una cadena JSON en PHP
Puede usar silex https://github.com/fabpot/Silex un marco simple basado en la sinfonía 2. Con Silex, puede enrutar y mapear fácilmente las acciones.
Tiene acceso al elemento CRUD básico y puede llamar a una función con el componente URL.
Hay algunos ejemplos en la documentación: http://silex-project.org/doc/usage.html
es posible que desee mirar Slim:
es definitivamente liviano y puede darle lo que parece que está buscando, un backend RESTful de fácil implementación con php.
nueva solución de API REST
ejemplos http://www.apifysnippets.com/
código https://github.com/apify
tutorial http://blog.fedecarg.com/2011/09/11/building-a-restful-web-api-with-php-and-apify/
ACTUALIZAR:
Otra solución de descanso para PHP: http://luracast.com/products/restler/
:)
EDITAR Nov 2018: Aunque no llamaría a CodeIgniter, hoy en día Laravel (actualmente 5.5) es el marco que utilizo.
Aquí hay un buen artículo que resume las razones por las que uso Laravel.
Para empezar a saltar, te recomiendo Laracasts . Es un servicio de video tutorial por suscripción que profundiza en cómo usar Laravel (y otras cosas relacionadas con desarrolladores web).
RESPUESTA ORIGINAL:
Codeigniter , para mí, es el más fácil de los marcos tipo Rails. Es esquivo, y usted puede construir una aplicación CRUD desde cero fácilmente.
El mayor problema con rodar tu propia aplicación es la seguridad. Codeigniter puede ayudarlo a crear un sitio menos hackeable protegiéndolo de muchos de los riesgos de seguridad comunes, como usar directamente los arreglos de $ _POST y no filtrar sus datos de manera adecuada. Sin mencionar las muchas clases de ayuda que ofrece, como la validación de formularios.
Puedes ver la documentation en su página web. Es muy fácil de usar, siempre y cuando recuerde que la navegación está oculta en la parte superior de cada página. :RE