'object', 'to'=>'object']; const TYPE_CREATE = 'create'; const TYPE_UPDATE = 'update'; const TYPES = ['create', 'update']; public static function saveHistory(String $type, int $tvFk, ?Tv $oldTv, ?Tv $newTv) { if(!in_array($type, self::TYPES)) throw new \Exception("Type '$type' No Valid"); $tvLog = new TvLog(); $tvLog->tv_fk = $tvFk; $tvLog->type = $type; if($oldTv) { $oldTv = $oldTv->toArray(); $tvLog->from =$oldTv; } if($newTv) { $newTv = $newTv->toArray(); $tvLog->from =$newTv; } $tvLog->save(); } }