ホームページ > 記事 > PHPフレームワーク > Laravelのトレイトとは何ですか
laravelでは、トレイトとはPHPなどの単一継承言語用に用意されたコード再利用の仕組みで、単一継承言語の制限を軽減し、開発者が異なる階層内で自由に作業できるようにするために使用されます。独立したクラスでは、コードの再利用を容易にするための実装方法として単純に理解できます。
#この記事の動作環境: Windows 10 システム、Laravel バージョン 6、Dell G3 コンピューター。
laravelのtraitとは
Traitとは、PHPなどの単一継承言語向けに用意されたコード再利用の仕組みです。トレイトは、単一継承言語の制限を軽減し、開発者が異なる階層内の独立したクラスでメソッドを自由に再利用できるように設計されています。特性とクラス構成のセマンティクスは、複雑さを軽減し、従来の多重継承や Mixin クラスに関連する典型的な問題を回避する方法を定義します。
まず、特性を定義する方法を知る必要があります。使用するキーワードは trait です。
namespace App\Traits; trait HasCreator { }
呼び出し
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(); } }
を呼び出して、特性のメソッドをモデルにマージします。単に使用するだけです。それを宣言したとおりに呼び出します。
実際にはここに優先順位があります: クラス>Trait> 親クラスの呼び出し
trait SoftDeletes { protected $forceDeleting = false; public static function bootSoftDeletes() { ... } public function forceDelete() { ... } }
trait はプロパティとメソッドを定義できます
trait のメソッド名: hasCreator () は次のように変更されます。 bootHasCreator を使用するとデフォルトで呼び出されます
関連する推奨事項: 最新の 5 つの Laravel ビデオ チュートリアル
以上がLaravelのトレイトとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。