<?php
class testClass {
protected $config;
public function getConfiguration()
{
$this->config = new section;
}
public function __get($name) {
echo "magic method has been called, name is $name\n";
$method = "get".ucfirst($name);
return method_exists($this, $method) ? $this->$method() : null;
}
public function test() {
var_dump(empty($this->configuration->name));
var_dump($this->configuration);
}
}
class section {
protected $vars;
public function __contstruct() {
$this->vars = [
'name' => 1,
'val' => 2
];
}
public function __get($name) {
return isset($this->vars[$name]) ? $this->vars[$name] : null;
}
public function __isset($name) {
return isset($this->vars[$name]);
}
}
$a = new testClass;
$a -> test();