エンジニアのひよこ_level10

毎日更新してた人。たまに記事書きます。

【Laravel】モデルが更新した時に、関数を動かす【193日目】

こんなとき使える

ユーザー情報を更新する時に、イベントを発行する。

User::updated(function($user) {
    if ($user->isDirty('email')) {
        Mail::to($user)->send(new UserMailChanged($user));
    }
});

これで、ユーザー情報を変更して(updatedイベント)、
かつ、emailが変更された時に( if ($user->isDirty('email')))、 メールを送る。

みたいな使い方が出来る。

何してるの

User::updated( function() {} );

これで、Userモデルがupdateされた時に、functionが動く

updatedはアップデート後

updatingはアップデート前

deletedは削除後みたいなことが出来ます。