Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / PHP / Hola Mundo con Slim Framework

Hola Mundo con Slim Framework

Por jc mouse viernes, julio 28, 2017

Slim es un micro framework para PHP que nos ayuda a escribir rápidamente aplicaciones Web y APIs sencillas pero poderosas, en este post veremos los pasos para crear un proyecto REST Slim con el clásico«Hola Mundo» 🙂

Necesitamos:

  • Composer instalado y configurado
  • XAMPP, AppServ o WAMP Server (usaremos XAMPP)
  • Conocimientos sobre PHP
  • Entorno de Desarrollo Netbeans (Si prefieres Eclipse o IntelliJ esta bien)
  • Slim (explicamos más adelante como instalarlo)
  • Un navegador web

Tiempo: 15 minutos

Paso 1: Instalación de Slim

En X:\xampp\htdocs crea una carpeta llamada «apirest»

Abre una consola y ubícate en esa dirección, a continuación escribe:

composer require slim/slim 3.8.1

Presiona ENTER y comenzara la descarga de archivos

consola windows

Debes tener algo como esto:

php files

Ahora crea una carpeta llamada «public» y dentro de esta un archivo «index.php»

Paso 2. El proyecto en Netbeans

Ve a Archivo -> Nuevo proyecto -> Categoría (PHP) -> Proyecto (PHP Application with Existing Sources)

Rellena la información como se ve en la imagen:

configuracion proyecto

A continuación selecciona el archivo index.php creado en el paso 1 y presiona terminar

deployed files

El proyecto esta listo, ignoren esa alerta en color rojo 🙂

rest con php

Paso 3. .htaccess

.htacces es un archivo de configuración para servidores web, Slim lo necesita para redireccionar todas las peticiones por el archivo index.php

clic derecho sobre carpeta public\ -> seleccionar New -> Others… -> Categoria (Otras) -> File Types (Archivo vacio), presionar siguiente, en File Name escribir .htaccess, no olvidar el punto (.) y clic en el botón terminar para crear el archivo.

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . index.php [L]

Paso 4. Hola Mundo

Abre el archivo index.php y pega el siguiente código:

<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;

require '../vendor/autoload.php';

$app = new \Slim\App;

$app->get('/hello/{name}', function (Request $request, Response $response) {
    $name = $request->getAttribute('name');
    $response->getBody()->write("Hello, $name");

    return $response;
});

$app->run();

?>

Paso 5. Probando el funcionamiento de Slim

Guarda el proyecto y abre tu navegador web favorito, debes tener XAMPP en ejecución no esta por demás mencionarlo 🙂

Escribe: http://localhost/apirest/public/hello/jcmouse

donde

  • http://localhost/apirest/public/ es la dirección de tu REST API
  • hello/ es la petición que que le hacemos al API, es decir el verbo
  • /jcmouse 🙂 es el parámetro que enviamos por GET (Escribe tu nombre)
  • http://localhost/apirest/public/hello/jcmouse es la dirección completa de la petición

Si observamos el archivo index, tenemos  un código que empieza con [$app->get(‘/hello/{name}’…. ] que corresponde justamente a la petición GET que realizamos y entre llaves {name} tenemos el nombre del parámetro, esto lo veremos en otro post con más detalle. Presiona ENTER y tenemos:

chrome php

enjoy!!!

Tags

Artículos similares

Modo Mantenimiento sin Consola: Archivo DOWN

La forma que tiene Laravel en poner una aplicación en Modo Mantenimiento es por consola mediante el comando: Sin embargo[...]

Añadir Splash Screen en Java/Netbeans

¿Splash Screen? El splash screen o traducido al aspañol 😉  es una «Pantalla de bienvenida» que se muestra cuando se ejec[...]

Ejemplo Cliente-Servidor en Android

Continuando con estos post de Cliente/Servidor, en esta oportunidad realizaremos un ejemplo usando un dispositivo móvil[...]

Conexión a MySQL con PDO

¿Que es PDO? PHP Data Objects (o PDO) es una extensión que provee una capa de abstracción de acceso a datos para PHP 5,[...]

Ejemplo completo de CORBA en Java

Common Object Request Broker Architecture (CORBA) es un estándar que permite que diversos componentes de software escrit[...]

Instalación de Netbeans en Ubuntu

Netbeans es uno de los entornos de desarrollo integrado (Integrated Development Environment – IDE)  más conocidos[...]