久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      laravel中trait是什么

      在laravel中,trait是為類似PHP的單繼承語言而準(zhǔn)備的一種代碼復(fù)用機(jī)制,trait用于減少單繼承語言的限制,使開發(fā)人員能夠自由地在不同層次結(jié)構(gòu)內(nèi)獨(dú)立的類中復(fù)用method,可以簡單理解為方便代碼復(fù)用的一種實(shí)現(xiàn)方式。

      laravel中trait是什么

      本文操作環(huán)境:Windows10系統(tǒng)、Laravel6版、Dell G3電腦。

      laravel中trait是什么

      Trait 是為類似 PHP 的單繼承語言而準(zhǔn)備的一種代碼復(fù)用機(jī)制。Trait 為了減少單繼承語言的限制,使開發(fā)人員能夠自由地在不同層次結(jié)構(gòu)內(nèi)獨(dú)立的類中復(fù)用 method。 Trait 和 Class 組合的語義定義了一種減少復(fù)雜性的方式,避免傳統(tǒng)多繼承和 Mixin 類相關(guān)典型問題。

      首先我們得知道如何定義一個(gè) Trait, 使用的關(guān)鍵字是 trait

      namespace AppTraits; trait HasCreator { }

      調(diào)用

      namespace App; use AppTraitsHasCreator; use IlluminateDatabaseEloquentModel; use IlluminateDatabaseEloquentSoftDeletes; class Post extends Model {     use HasCreator, SoftDeletes;     protected $fillable = ['title', 'user_id'];     protected static function boot()     {         parent::boot();         self::hasCreator();     } }

      將 Trait 中的方法合并到 模型中去了,要想使用就 use 一下,然后當(dāng)自己聲明的一樣去調(diào)用就好了。

      這里面其實(shí)有個(gè)優(yōu)先級(jí)的:調(diào)用類 >Trait > 父類

      trait SoftDeletes {     protected $forceDeleting = false;     public static function bootSoftDeletes()     {         ...     }     public function forceDelete()     {       ...     } }

      trait可以定義屬性和方法

      trait 中的 方法名:hasCreator()改為 bootHasCreator 在use時(shí)會(huì)默認(rèn)調(diào)用

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)