Me gustaría crear una API JSON en PHP, pero no sé cómo hacerlo para mantener limpio y fácil de código.

De la base debe ser algo como esto, pero parece bastante duro para crear un complejo JSON, simplemente mediante la creación de un Objeto ficticio.

<?php
$data = /** whatever you're serializing **/;
header('Content-Type: application/json');
echo json_encode($data);
?>

Hay alguna biblioteca más fácil que el Zend Framework JSON del Servidor ?

Soluciones :

  • pruebe el pastel de php(cakephp.org)
  • Parece ser muy complicado en comparación a Simple JSON PHP 😮
  • Estoy de acuerdo en sus poco más complicado, pero es bastante fácil cuando se utiliza otro marco y el uso de marco da un buen montón de otros beneficios también.
InformationsquelleAutor Rouky | 2015-05-17

2 Comentarios

  1. 4

    Puede utilizar el Simple JSON para PHP de la biblioteca. Envía las cabeceras y le dará la capacidad para FORJAR su JSON para que se adapte a sus necesidades.

    Parece :

    <?php
    
      include('../includes/json.php');
    
      $json = new json();
    
      $object = new stdClass();
      $object->FirstName = 'John';
      $object->LastName = 'Doe';
      $array = array(1,'2', 'Pieter', true);
      $jsonOnly = '{"Hello" : "darling"}';
    
      $json->add('status', '200');
      $json->add("worked");
      $json->add("things", false);
      $json->add('friend', $object);
      $json->add("arrays", $array);
      $json->add("json", $jsonOnly, false);
    
      //This will output the legacy JSON
      $json->send();
    
      //This will output the array, omitting names
      //$json->send_array();
    ?>
  2. 1

    Te recomiendo la Slim framework para PHP http://www.slimframework.com/

    También puedes querer leer un poco acerca de API RESTful, yo creo que es el concepto que usted quiere lograr. http://www.sitepoint.com/writing-a-restful-web-service-with-slim/

    Es muy ligero y fácil de usar:

    $app = new \Slim\Slim(array(
    'debug' => true
    ));
    
    
    $app->get('/clubs/', 'getClubs');
    function getClubs()
    {
        global $entityManager;
        global $app;
    
        $club = $entityManager->find('Model\Club', 1);
    
       $app->response->body(json_encode($club));
    }
    • Genial marco! La voy a utilizar para el proyecto más grande!

Dejar respuesta

Please enter your comment!
Please enter your name here