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 ?

藏色散人
Libérer: 2021-12-06 15:20:41
avant
2002 Les gens l'ont consulté

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
Copier après la connexion

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

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

结构如下:

- app
    - Console
+   - Commands
+       - stubs
+           - service.plain.stub
+       - ServiceMakeCommand.php
        - Kernel.php
- .
- .
- .
Copier après la connexion

service.plain.stub 代码:

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

<?php

namespace {{ namespace }};

class {{ class }}
{
    //
}
Copier après la connexion

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

快速开始

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

我们主要是对着 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;;
    }
}
Copier après la connexion

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

php artisan make:service UserService
Copier après la connexion

结构如下:

- app
    - Console
        - Commands
        - stubs
        - service.plain.stub
        - ServiceMakeCommand.php
        - Kernel.php
+   - Services
+       - UserService.php
- .
- .
- .
Copier après la connexion

让我们查看 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{
    //
    }
Copier après la connexion
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!

Étiquettes associées:
source:learnku.com
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal