Поругайте Static wrapper

cDLEON

Онанист РНРСlub
Что я хотел сказать - если вами движет желание "не усложнять", то, пожалуйста, пользуйтесь стандартными функциями, а не велосипедными синглтонами.
 

Vladson

Сильнобухер
WMix, у меня гостевуха на текстовом файле, в блокноте редактирую, но суть не в этом, а в том что если чего либо нет у меня, это не значит что этого не существует вообще.
 

HraKK

Мудак
Команда форума
Разрешите, тогда и я уже выскажусь. Если уж делать такое, то я бы делал через setInstance(IDBWrapper $dbWrapper);
объясню почему:
1) Я люблю контролировать код, мне не нравится что синглтон позволяет проинициализироваться где угодно.
2) Single responsibility. Создание и доступ мы разделяем, поэтому определение что будет внутри будет вынесенно в бутстрап приложения где ему и место и уберется хард код в виде:
PHP:
 require dirname(__FILE__)."/safemysql.class.php";
            self::$instance = new safemysql($cfg);
3) Делает этот враппер тестируемым, ведь туда можно назначить мок.
 

fixxxer

К.О.
Партнер клуба
HraKK, думаю, целевая аудитория такового враппера не знает таких страшных слов. А кто знает, тем он не нужен, у них давно есть, чем управлять зависимостями.
 
  • Like
Реакции: AmdY

HraKK

Мудак
Команда форума
PHP:
public SetInstance(IDBWrapper $dbWrapper)
{
    static::$instance = $dbWrapper
}
 
Сверху