Задать вопрос
@bedolazhka

Правильно ли создаю сам себя?

class Db
{
    private static $instance;

    private function __construct($host, $name, $char, $user, $pass, $opt)
    {
        self::$instance = new PDO("mysql:host={$host};dbname={$name};charset={$char}", $user, $pass, $opt);
    }

    public static function setup($host, $name, $char, $user, $pass, $opt = [])
    {
        if (is_null(self::$instance)) {
            // self::$instance = new self($host, $name, $char, $user, $pass, $opt); // так пишут практически во всех примерах
            new self($host, $name, $char, $user, $pass, $opt); // я правильно понял, что self::$instance = тут и не нужно вообще?
        }
        return self::$instance;
    }
}
  • Вопрос задан
  • 161 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Stepik
    PHP (pro)
    1 месяц
    Далее
  • Skillbox
    Профессия PHP-разработчик с нуля до PRO
    7 месяцев
    Далее
Решения вопроса 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Не трогал бы ты эту статику.
Целее будешь
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@gian_tiaga
В принципе то правильно, но в таком использовании нет никакого смысла, это тоже самое что если бы вы создавали новый экземпляр класса только вместо new заставляете писать setup чем можете запутать читающего
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы