Illuminate\Database\Eloquent\Model::getDirty PHP Method

getDirty() public method

Get the attributes that have been changed since last sync.
public getDirty ( ) : array
return array
    public function getDirty()
    {
        $dirty = [];
        foreach ($this->attributes as $key => $value) {
            if (!array_key_exists($key, $this->original)) {
                $dirty[$key] = $value;
            } elseif ($value !== $this->original[$key] && !$this->originalIsNumericallyEquivalent($key)) {
                $dirty[$key] = $value;
            }
        }
        return $dirty;
    }

Usage Example

 /**
  * creates an activity entry for each dirty attribute
  * @param \Illuminate\Database\Eloquent\Model $model
  */
 public function updated($model)
 {
     $dirty = $model->getDirty();
     foreach ($dirty as $key => $value) {
         $data = ['type' => $key, 'note' => $value];
         $model->activity()->create($data);
     }
 }
All Usage Examples Of Illuminate\Database\Eloquent\Model::getDirty
Model