Maison >cadre php >Laravel >Parlons de la façon de générer rapidement des services dans Laravel ?

Parlons de la façon de générer rapidement des services dans Laravel ?

藏色散人
藏色散人avant
2021-12-06 15:19:562001parcourir

La colonne tutorielle suivante de Laravel présentera comment utiliser la commande make:service pour générer rapidement des services. J'espère qu'elle sera utile à tout le monde !

Artisan est une interface en ligne de commande avec Laravel. Artisan existe sous la forme d'un script artisan dans le répertoire racine de votre application et fournit de nombreuses commandes utiles qui peuvent vous aider lors de la création de votre application. En plus des commandes fournies par Artisan, vous pouvez également écrire vos propres commandes personnalisées. Dans la plupart des cas, les commandes se trouvent dans le répertoire app/Console/Commands ; cependant, tant que vos commandes peuvent être chargées par Composer, vous êtes libre de choisir où les stocker.

artisan 脚本的形式存在于应用的根目录,并提供了许多有用的命令,这些命令可以在构建应用时为你提供帮助。

除 Artisan 提供的命令外,你也可以编写自己的自定义命令。 命令在多数情况下位于 app/Console/Commands 目录中; 不过,只要你的命令可以由 Composer 加载,你就可以自由选择自己的存储位置。

前期工作

在开始之前,我们要准备相应的目录和文件。

我们可以使用以下命令快速生成 ServiceMakeCommand.php 文件:

php artisan make:command ServiceMakeCommand

执行完后会在你的 Console 文件夹下生成 Commands 文件夹和 Commands/ServiceMakeCommand.php 文件。

我们还需要在 Commands 文件夹下添加一些文件夹和文件:

结构如下:

- app
    - Console
+   - Commands
+       - stubs
+           - service.plain.stub
+       - ServiceMakeCommand.php
        - Kernel.php
- .
- .
- .

service.plain.stub 代码:

app/Console/Commands/stubs/service.plain.stub

<?php

namespace {{ namespace }};

class {{ class }}
{
    //
}

我们的前期准备就此结束,是不是很简单?哈哈。

快速开始

接下来我们就直接一把梭哈了,注意改动的代码噢。

我们主要是对着 ServiceMakeCommand.php 文件一把梭哈,所以:

app/Console/Commands/ServiceMakeCommand.php

<?php

namespace App\Console\Commands;

use Illuminate\Console\GeneratorCommand;

class ServiceMakeCommand extends GeneratorCommand
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = &#39;make:service {name}&#39;;

    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = &#39;Create a new service class&#39;;

    /**
     * The type of class being generated.
     *
     * @var string
     */
    protected $type = &#39;Service&#39;;

    /**
     * Get the stub file for the generator.
     *
     * @return string
     */
    protected function getStub()
    {
        return __DIR__ . &#39;/stubs/service.plain.stub&#39;;
    }

    /**
     * Get the default namespace for the class.
     *
     * @param  string  $rootNamespace
     * @return string
     */
    protected function getDefaultNamespace ( $rootnamespace )
    {
        return $rootnamespace . &#39;\Services&#39;;
    }
}

最后,我们执行以下命令快速生成 UserService.php 文件:

php artisan make:service UserService

结构如下:

- app
    - Console
        - Commands
        - stubs
        - service.plain.stub
        - ServiceMakeCommand.php
        - Kernel.php
+   - Services
+       - UserService.php
- .
- .
- .

让我们查看 UserService.php

Travail préliminaire

Avant de commencer, nous devons préparer les répertoires et fichiers correspondants.

Nous pouvons utiliser la commande suivante pour générer rapidement le fichier ServiceMakeCommand.php :

<?php

namespace App\Services;
class UserService{
    //
    }
Après l'exécution, les Commandes seront générées dans votre Console dossier > dossier et le fichier Commands/ServiceMakeCommand.php.

Nous devons également ajouter quelques dossiers et fichiers sous le dossier Commands : 🎜🎜La structure est la suivante : 🎜rrreee🎜service.plain.stub Code : 🎜🎜 app/ Console/Commands/stubs/service.plain.stub🎜rrreee🎜 Ceci conclut nos préparatifs préliminaires, n'est-ce pas très simple ? Ha ha. 🎜🎜🎜🎜Démarrez vite🎜🎜Ensuite, nous commencerons simplement à jouer, faites attention au code modifié. 🎜🎜Nous travaillons principalement sur le fichier ServiceMakeCommand.php, donc : 🎜🎜app/Console/Commands/ServiceMakeCommand.php🎜rrreee🎜Enfin, nous exécutons la commande suivante pour générer rapidement UserService . php : 🎜rrreee🎜La structure est la suivante : 🎜rrreee🎜Vérifions si UserService.php est cohérent avec le code que nous avons imaginé : 🎜🎜app/Services/UserService.php 🎜rrreee 🎜Félicitations, nous avons obtenu les résultats que nous souhaitions. 🎜🎜Résumé🎜🎜Bien que ce que nous avons fait soit relativement rudimentaire, nous pouvons le rendre plus parfait avec seulement quelques améliorations. 🎜

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer
Article précédent:Contrôleurs à LaravelArticle suivant:Contrôleurs à Laravel