public function fill(array $data)
    {
        foreach ($data as $column => $value) {
            $this->__set($column, $value);
        }
        return $this;
    }
public function fill(array $data)
    {
        foreach ($data as $column => $value) {
            $this->__set($column, $value);
        }
        return $this;
    }
public function fill ( array $ data ) { foreach ( $ data as $ column => $ value ) { $ this -> __set ( $ column , $ value ) ; } return $ this ; }
Changes the value in multiple columns

Very useful when chaining __construct()

Example:

$model = (new My\Model)->fill([
'column' => 'value',
]);

@param mixed[] $data An array of known columns => value

@return $this

@throws ... same as __set()
Changes the value in multiple columns