Сохранение жестко заданной ссылки на имена объектов класса для использования в реестре PHP

Мне интересно, является ли это хорошей или плохой практикой и что может быть лучшим решением для этого случая. По сути, у меня есть реестр PHP, который может создать экземпляр или вернуть существующий экземпляр объекта класса, указав:

$classObject = $this->registry->getClassInstance(ObjectPath);

ObjectPath в данном случае является пространством имен, потому что так настроен мой проект. Таким образом, полностью рабочий пример будет:

$mysqli = $this->registry->getClassInstance('\application\models\Database\drivers\MySQLi');

Однако вместо того, чтобы каждый раз вручную вводить пространство имен класса, я вместо этого:

$mysqli = $this->registry->getClassInstance($this->registry->mySQLiDriver());

который возвращает пространство имен, облегчая использование и обновление проекта. Это плохая идея, хотя? Известны ли лучшие практики для достижения того же результата?

0

Решение

Он считает, что вы должны использовать композитор, чтобы сделать это автоматически для вас. Это отличный инструмент: https://getcomposer.org/
Он автоматически определяет, что нужно создать на основе предоставленного вами пространства имен.
Однако, если вы действительно хотите сделать это самостоятельно, я бы не рекомендовал вам использовать абсолютные пути из корня вашего приложения.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]