[PHP][Laravel] LaravelのEloquentで更新前の値を取得
バージョン
Laravel 6.0
概要
Eloquentでレコード更新(save)前に更新対象と変更前の値を取得する。
その他にも変更前情報関連のサンプルコードを記載する。
コード
$user_info = UserInformation::find($user_id); $user_info->name = '山田太郎'; $user_info->status = 4; // 変更前ステータス $before_status = $user_info->getOriginal("status"); // 全ての変更前値をみたい $dirty = $user_info->getDirty(); foreach ($dirty as $field => $new_data) { $old_data = $user_info->getOriginal($field); } // 変更対象数の確認 if (count($dirty) > 0){ // 変更対象がある $user_info->save(); }