- var_dump: documentation ( source)
<?php namespace App\Entity;
abstract class Entity {
protected $repository;
protected $transformColumns = [];
protected $transformValues = [];
protected $properites = [];
public function __construct () {
$this->transformColumns = [
'archivedAt' => (function ($column) {
return 'archived_at';
})
];
}
public function set (string $column, $value) {
if (isset($this->transformColumns[$column])) {
$column = $this->transformColumns[$column]($column);
}
if (isset($this->transformValues[$column])) {
$value = $this->transformValues[$column]($value);
}
$this->properites[$column] = $value;
return;
}
public function __set ($column, $value) {
return $this->set($column, $value);
}
public function get(string $column) {
if (isset($this->transformColumns[$column])) {
$column = $this->transformColumns[$column]($column);
}
return $this->properites[$column];
}
public function __get ($column) {
return $this->get($column);
}
}
$o = new Entity();
$o->archived_at = (new DateTime())->format('d-m-Y H:i:s');
echo '<pre>', var_dump($o), '</pre>';