PHP

Slim

  1. Verifica la disponibilidad de PHP:

    [alumno@servidor ~]$ which php
    /usr/bin/php
    [alumno@servidor ~]$ php --version
    PHP 5.4.43 (cli) (built: Jul 17 2015 13:10:45)
    Copyright (c) 1997-2014 The PHP Group
    Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
    
  2. Descarga a Composer (composer.phrar):

    [alumno@servidor ~]$ curl -sS https://getcomposer.org/installer | php
    #!/usr/bin/env php
    
    Downloading...
    
    Composer successfully installed to: /home/alumno/composer.phar
    Use it: php composer.phar
    
  3. Instala a Composer dentro de tu PATH:

    [alumno@servidor ~]$ echo $PATH
    /home/alumno/.local/bin:/home/alumno/.local/sbin:/sbin:/usr/sbin:...
    [alumno@servidor ~]$ mv composer.phar /home/alumno/.local/bin/composer
    [alumno@servidor ~]$ chmod +x /home/alumno/.local/bin/composer
    
  4. Verifica la instalación de Composer:

    [alumno@servidor ~]$ which composer
    /home/alumno/.local/bin/composer
    [alumno@servidor ~]$ composer --version
    Composer version 1.0-dev (bd2d7eba05dc6a51dbbad780b6f0eb505accba75) 2015-07-31 08:06:09
    
  5. Crea el directorio para tu proyecto (slim) e ingresa a él:

    [alumno@servidor ~]$ mkdir -p /home/alumno/www/slim
    [alumno@servidor ~]$ cd /home/alumno/www/slim/
    
  6. Crea el archivo composer.json con el siguiente contenido:

    {
        "require": {
            "slim/slim": "2.*"
        }
    }
    
  7. Instala a Slim en tu proyecto (/home/alumno/www/slim):

    [alumno@servidor slim]$ composer install
    Loading composer repositories with package information
    Installing dependencies (including require-dev)
      - Installing slim/slim (2.6.2)
        Downloading: 100%
    
    Writing lock file
    Generating autoload files
    
  8. Crea el archivo index.php (el punto de inicio de tu ”aplicación”):

    <?php
    require 'vendor/autoload.php';
    
    $app = new \Slim\Slim();
    
    $app->get('/', function () use ($app) {
        $cuerpo_de_respuesta = json_encode(
          array('mensaje' => 'Hola mundo')
        );
        $app->response->setStatus(200);
        $app->response->headers->set('Content-Type', 'application/json');
        $app->response->setBody($cuerpo_de_respuesta);
    });
    
    $app->run();
    
  9. Ejecuta tu ”aplicación”:

    [alumno@servidor slim]$ php -S 0.0.0.0:8080
    PHP 5.4.43 Development Server started at Fri Jul 31 22:32:23 2015
    Listening on http://0.0.0.0:8080
    Document root is /home/alumno/www/slim
    Press Ctrl-C to quit.
    
  10. Con un cliente REST accede a http://localhost:8080

    images/slim.png

Lecturas