Maison  >  Article  >  développement back-end  >  Framework d'implémentation PHP : tutoriel d'introduction au framework Lumen

Framework d'implémentation PHP : tutoriel d'introduction au framework Lumen

WBOY
WBOYoriginal
2023-06-18 08:39:022319parcourir

Lumen est un microframework basé sur PHP développé par les développeurs du framework Laravel. Il a été initialement conçu pour créer rapidement de petites applications API et des microservices, tout en conservant certains composants et fonctionnalités du framework Laravel. Le framework Lumen est léger, rapide et facile à utiliser, il a donc reçu une attention et une utilisation généralisées. Dans cet article, nous allons rapidement démarrer avec le framework Lumen et apprendre à utiliser le framework Lumen pour créer des applications API simples.

  1. Préparation du framework

Avant d'apprendre le framework Lumen, nous devons d'abord préparer le framework. Le framework Lumen peut être installé à l'aide de composer, donc composer doit être installé avant d'installer Lumen. Tout d’abord, nous devons nous rendre sur le site officiel du compositeur pour télécharger et installer : https://getcomposer.org/download/. Une fois l'installation terminée, nous pouvons vérifier si composer est installé avec succès sur la ligne de commande :

$ composer -v

Nous pouvons trouver l'adresse de téléchargement de Lumen sur le site officiel de Lumen, ou nous pouvons la télécharger directement en utilisant composer. Entrez la commande suivante sur la ligne de commande pour télécharger et installer :

$ composer create-project --prefer-dist laravel/lumen app

Ici, nous utilisons la commande composer pour télécharger le framework Lumen et l'installer dans le fichier nommé "app" dans le répertoire.

  1. Gestion des routes

La gestion du routage du framework Lumen est très simple et claire. Il suffit de définir les règles de routage correspondantes dans le fichier routes/web.php. Ce qui suit est un exemple simple de paramètre de routage :

<?php

$router->get('/', function () use ($router) {
    return $router->app->version();
});

$router->get('/users', 'UserController@index');
$router->get('/users/{id}', 'UserController@show');

Ici, nous définissons trois règles de routage. La première est la route par défaut. Lors de l'accès à la page d'accueil du site Web, le numéro de version de Lumen est renvoyé par défaut ; la deuxième route est utilisée pour obtenir la liste des utilisateurs, et la méthode du contrôleur correspondante est « index » dans UserController ; est utilisé pour obtenir des informations détaillées sur un utilisateur spécifique, la méthode du contrôleur correspondante est "show" dans UserController.

  1. Gestion des contrôleurs

La gestion des contrôleurs du framework Lumen est similaire au framework Laravel Nous pouvons définir le contrôleur correspondant dans le répertoire app/Http/Controllers. Voici un exemple de UserController :

<?php

namespace AppHttpControllers;

use IlluminateHttpRequest;
use AppUser;

class UserController extends Controller
{
    public function index()
    {
        $users = User::all();

        return response()->json($users);
    }

    public function show($id)
    {
        $user = User::find($id);

        return response()->json($user);
    }
}

Ici, nous définissons deux méthodes de contrôleur, correspondant à la liste des utilisateurs et obtenant les détails de l'utilisateur. Parallèlement, nous utilisons la méthode de réponse dans le framework Lumen pour renvoyer les données au format json.

  1. Opération de base de données

Le framework Lumen peut effectuer des opérations de base de données via l'ORM Eloquent intégré au framework Laravel. Nous pouvons configurer la base de données correspondante dans le fichier config/database.php, puis effectuer des requêtes et des opérations de base de données via le modèle. Voici un exemple simple :

<?php

namespace App;

use IlluminateDatabaseEloquentModel;

class User extends Model
{
    protected $fillable = ['name', 'email', 'password'];
}

Il s'agit d'un modèle utilisateur simple, qui définit l'attribut fillable pour spécifier les noms de champs qui peuvent être modifiés. Nous pouvons utiliser ce modèle dans UserController pour les opérations de requête et de modification :

<?php

namespace AppHttpControllers;

use IlluminateHttpRequest;
use AppUser;

class UserController extends Controller
{
    public function index()
    {
        $users = User::all();

        return response()->json($users);
    }

    public function show($id)
    {
        $user = User::find($id);

        return response()->json($user);
    }

    public function store(Request $request)
    {
        $this->validate($request, [
            'name' => 'required',
            'email' => 'required|unique:users',
            'password' => 'required'
        ]);

        $user = User::create([
            'name' => $request->input('name'),
            'email' => $request->input('email'),
            'password' => password_hash($request->input('password'), PASSWORD_DEFAULT)
        ]);

        return response()->json($user, 201);
    }
}

Ici, nous avons ajouté une méthode de magasin pour recevoir les requêtes POST et enregistrer les données utilisateur dans la base de données.

  1. Obtenir des résultats

Enfin, nous pouvons utiliser la ligne de commande pour démarrer le serveur de développement PHP intégré à des fins de test. Exécutez la commande suivante dans le répertoire racine du framework :

$ php -S localhost:8000 -t public

Visitez ensuite http://localhost:8000/users dans le navigateur pour obtenir avec succès les informations sur la liste des utilisateurs. De même, l'accès à http://localhost:8000/users/1 permettra également d'obtenir avec succès les informations utilisateur spécifiques avec l'ID 1.

Résumé

Ce qui précède est le processus de développement d'une application API complète du framework Lumen. Le framework Lumen fournit une méthode de développement d'API légère et pratique tout en conservant certaines des excellentes fonctionnalités du framework Laravel, ce qui peut nous aider à créer rapidement de petites applications API et des microservices. Si vous êtes intéressé par le framework Lumen, vous pouvez essayer de l'utiliser dans des projets réels.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn