Maison > cadre php > Laravel > Qu'est-ce qu'un trait dans Laravel

Qu'est-ce qu'un trait dans Laravel

WBOY
Libérer: 2022-01-13 17:08:16
original
2232 Les gens l'ont consulté

Dans Laravel, les traits sont un mécanisme de réutilisation de code préparé pour les langages à héritage unique comme PHP. Les traits sont utilisés pour réduire les restrictions des langages à héritage unique et permettre aux développeurs de travailler librement dans des classes indépendantes au sein de différentes hiérarchies. être simplement compris comme une méthode de mise en œuvre pour faciliter la réutilisation du code.

Qu'est-ce qu'un trait dans Laravel

L'environnement d'exploitation de cet article : système Windows 10, Laravel version 6, ordinateur Dell G3.

Qu'est-ce qu'un trait dans Laravel

Trait est un mécanisme de réutilisation de code préparé pour les langages à héritage unique comme PHP. Les traits sont conçus pour réduire les limitations des langages à héritage unique et permettre aux développeurs de réutiliser librement des méthodes dans des classes indépendantes au sein de différentes hiérarchies. La sémantique de la composition des traits et des classes définit un moyen de réduire la complexité et d'éviter les problèmes typiques associés à l'héritage multiple traditionnel et aux classes Mixin.

Il faut d'abord savoir comment définir un Trait. Le mot-clé utilisé est trait

namespace App\Traits;
trait HasCreator
{
}
Copier après la connexion

Appelez

namespace App;
use App\Traits\HasCreator;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
class Post extends Model
{
    use HasCreator, SoftDeletes;
    protected $fillable = ['title', 'user_id'];
    protected static function boot()
    {
        parent::boot();
        self::hasCreator();
    }
}
Copier après la connexion

pour fusionner les méthodes du Trait dans le modèle. Si vous souhaitez l'utiliser, utilisez-le et continuez comme vous le souhaitez. » a déclaré. Appelez-le.

Il y a en fait une priorité ici : appeler la classe >Trait > la classe parent

trait SoftDeletes
{
    protected $forceDeleting = false;
    public static function bootSoftDeletes()
    {
        ...
    }
    public function forceDelete()
    {
      ...
    }
}
Copier après la connexion

trait peut définir des propriétés et des méthodes

Le nom de la méthode dans trait : hasCreator() est remplacé par bootHasCreator, qui sera appelé par défaut lorsque en utilisant

Recommandations associées : Les cinq derniers didacticiels vidéo Laravel

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:php.cn
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