<?php
trait HydrateBehaviour
{
public static function hydrate($other)
{
$new = new self();
foreach ($other as $k => $v) {
$new->{$k} = $v;
}
return $new;
}
}
class Entity {
use HydrateBehaviour;
private $ololo;
private $foo;
private $bar;
public function out() {
echo $this->ololo, $this->foo, $this->bar;
}
}
$en = Entity::hydrate(['ololo' => 1, 'foo' => 2]);
$en->out();
- Output for 7.0.0 - 7.0.20, 7.1.0 - 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.7
- 12
preferences:
159.61 ms | 404 KiB | 183 Q