Описал классы, но может их вообще не нужно инициализировать? К примеру как на пэхапэ обращаться к статике? Есть такое? Просто получается, что я буду использовать свойства и методы, а экземпляры класса в виде объекта мне не нужны. Спасибо!
Кстати, видел такую штуку на пэхапэ:
где сначала инициализируется Core, а потом вызов дочерних инициализируется при вызове и помещается в массив свойства. Но на Python же нельзя пихать объекты в списки или множества...
class Core{
// Свойства - Классы API
private $classes = ['class' => 'ClassName'];
// Созданные объекты
private static $objects = array();
// Магический метод, создает нужный объект API
public function __get($name){
// Если такой объект уже существует, возвращаем его
if(isset(self::$objects[$name]))
return(self::$objects[$name]);
// Если запрошенного API не существует - ошибка
if(!array_key_exists($name, $this->classes))
return null;
// Определяем имя нужного класса
$class = $this->classes[$name];
// Подключаем его
include_once('class/'.$class.'.php');
// Сохраняем для будущих обращений к нему
self::$objects[$name] = new $class();
// Возвращаем созданный объект
return self::$objects[$name];
}
}