Правильный способ загрузки базового класса + расширенный класс в PHP

Я работаю над личным проектом, и я впервые использую ООП. Мой проект имеет базовый класс, который распространяется другими (базовая настройка). Чтобы уточнить, это то, что я делаю:

Базовый класс:

class ABC { function __construct() { ... } } 

Расширение класса:

 class DEF extends ABC { function __construct() { ... } } 

Хотя базовый класс всегда загружен, другие классы загружаются в зависимости от ситуации.

Мой вопрос в том, каков правильный способ динамической загрузки правого расширенного класса? Должен ли я импортировать оба php? Должен ли я использовать базовый класс ( $ x = new ABC () ), а затем загрузить другой класс из базового класса?

Вы можете использовать автозагрузчик в верхней части файла:

 function __autoload($className) { require_once $className . '.php'; } 

Или вы можете использовать родительский класс «constuctor» в дочернем классе constuctor и вручную импортировать файл php:

 require_once(your_file.php); class DEF extends ABC { function __construct() { parent::__construct(); } } 

Если вы поместите все свои классы в одну и ту же папку и назовите их [class] .php, вы можете поместить следующее в начало своего скрипта, и все они будут загружаться магически

 <?php function __autoload($class_name) { require_once $class_name . '.php'; } 

Если они входят в разные папки, просто выполните свою собственную схему

Ссылка: http://php.net/manual/en/language.oop5.autoload.php