возможно несколько наоборот?У меня в голове есть идея, что я должен создать какое-то глобальное хранилище классов, ещё во время выполнения bootstrap.php. И по мере обращения к какому-то классу из любой части приложения, происходит проверка на существование данного экземпляра класса, и при необходимости такой экземпляр создаётся.
И уже в приложении, я мог бы без проблем использовать конструкции типа App::Session->Check(), и в классе App, происходила бы проверка, существует ли экземпляр класса Session, если нет, то создавала бы.
Натолкните как правильно всё-же делать.
class App{
static function check($class){}
}
App::check('Session')
держи говнокод =) в мелких проектах юзаю, где пофигу на относительно тесную связанностьУ меня в голове есть идея, что я должен создать какое-то глобальное хранилище классов, ещё во время выполнения bootstrap.php. И по мере обращения к какому-то классу из любой части приложения, происходит проверка на существование данного экземпляра класса, и при необходимости такой экземпляр создаётся.
1. стиль программирования не должен зависеть от IDEА так же избавитель от подсказок в IDE и превращатель хранилища инстансов в черный ящик.
/* @var $db \My\Cool\Db */
$db = App::get('db'); // избавитель от дум про синглтон
$db2 = App::get('db2');
Я, видимо, не так понял ситуацию, которую вы обсуждали.Вы можете установить несколько соединений. Это ответ?
Ну вот да, я как раз в контексте прошлого своего вопроса думал об этом, и пришел к тому, что к $GLOBALS['db'] есть доступ на запись у всего приложения. И где-то что-то можно, теоретически, изменить.И чем такой сервис локатор отличается от $GLOBALS?