[ENTITY] Add meta method 'have*' to Entity base class, which checks if a field 'isset'

This commit is contained in:
Hugo Sales 2021-04-27 20:56:13 +00:00
parent 34059a8d3d
commit 7adc198a52
Signed by: someonewithpc
GPG Key ID: 7D0C7EAFC9D835A0

View File

@ -31,6 +31,15 @@ use DateTime;
*/
abstract class Entity
{
public function __call(string $name , array $arguments): mixed
{
if (Formatting::startsWith($name, 'have')) {
$prop = Formatting::camelCaseToSnakeCase(Formatting::removePrefix($name, 'have'));
return isset($this->{$prop});
}
throw new \Exception("Entity::{$name} called with bogus arguments: " . print_r($arguments, true));
}
/**
* Create an instance of the called class or fill in the
* properties of $obj with the associative array $args. Doesn't