44 lines
793 B
PHP
44 lines
793 B
PHP
<?php
|
|
|
|
|
|
namespace Venom\Models;
|
|
|
|
|
|
/**
|
|
* Database Object to use queries like this $obj->id, $obj->value
|
|
* also the option to print it in csv format ; as delimiter
|
|
* @package Venom\Database
|
|
*/
|
|
class DatabaseObject
|
|
{
|
|
private array $data = [];
|
|
|
|
public function __get($name)
|
|
{
|
|
if (isset($this->data[$name])) {
|
|
return $this->data[$name];
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public function __set($name, $value)
|
|
{
|
|
$this->data[$name] = $value;
|
|
}
|
|
|
|
public function __isset($name)
|
|
{
|
|
return isset($this->data[$name]);
|
|
}
|
|
|
|
public function toString()
|
|
{
|
|
return implode(';', $this->data);
|
|
}
|
|
|
|
public function getHead()
|
|
{
|
|
$keys = array_keys($this->data);
|
|
return implode(';', $keys);
|
|
}
|
|
} |