<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру 2.0

PHP и MySQL с Нуля до Гуру 2.0

Данный курс научит Вас программировать на самом популярном Web-языке в мире - PHP. Курс состоит из 11 разделов, в которых с нуля рассказывается и показывается процесс написания различных скриптов на PHP.

В курсе Вы узнаете всю необходимую теоретическую часть, а также увидите массу практических примеров, в том числе, и из моей практики.

Почти к каждому уроку идут упражнения.

Просмотрев данный курс, Вы сможете создавать абсолютно любые PHP-сайты любой сложности.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Вопрос по приминению паттерна "Одиночка" в курсе по созданию движка
26.07.2015 17:43:22 Вопрос по приминению паттерна "Одиночка" в курсе по созданию движка Сообщение #1
(Алекс)

(Алекс)

Эксперт

Эксперт

Дата регистрации:
21.06.2013 14:56:26

Сообщений: 114

Здравствуйте,
В видео-курсе, в разделе адаптеров, встретил такой класс, который возвращает экземпляр класса DataBase или, если его нет, создает и возвращает.
Так вот вопрос: если мы создадим экземпляр, например, в файле router.php, потом в этом файле вызовем функцию класса, который находится в другом файле, скажем, UserController.php, то надо ли нам передавать этот экземпляр в качестве параметра или нет?
То есть, не будет ли создаваться в такой ситуации новый экземпляр? (пример ниже)
router.php
<?
class Router {

public function route() {
$db = DataBase::getDBO(); // создали и вернули экземпляр в 1 раз!
$user = new UserController();
$user->getUserFromDB(); // вот тут вызвали метод, который требует соединения с БД
}

}
?>

UserController.php
<?
class UserController {

public function getUserFromDB() {
$db = DataBase::getDBO(); // здесь создастся новый экземпляр или нет?
/* далее работаем с объектом класса DataBase */
}

}
?>
Профиль Ответить
28.07.2015 12:30:38 Вопрос по приминению паттерна "Одиночка" в курсе по созданию движка Сообщение #2
gemiks

gemiks

Мастер

Мастер

Дата регистрации:
17.03.2013 18:03:11

Сообщений: 176

Нет повторно он не создается, осуществляется проверка, создан или нет
Профиль Ответить
28.07.2015 13:03:04 Вопрос по приминению паттерна "Одиночка" в курсе по созданию движка Сообщение #3
(Алекс)

(Алекс)

Эксперт

Эксперт

Дата регистрации:
21.06.2013 14:56:26

Сообщений: 114

понятно. Я так понимаю, что класс не уничтожается из-за того, что не создан деструктор?
Профиль Ответить
28.07.2015 13:41:03 Вопрос по приминению паттерна "Одиночка" в курсе по созданию движка Сообщение #4
gemiks

gemiks

Мастер

Мастер

Дата регистрации:
17.03.2013 18:03:11

Сообщений: 176

Если деструктор не создан явно, не означает что он не срабатывает. Это так же как метод __string() его не обьязательно описывать, но он срабатывает.
Профиль Ответить
28.07.2015 13:46:56 Вопрос по приминению паттерна "Одиночка" в курсе по созданию движка Сообщение #5
(Алекс)

(Алекс)

Эксперт

Эксперт

Дата регистрации:
21.06.2013 14:56:26

Сообщений: 114

Тогда почему данные не уничтожаются?
Профиль Ответить
28.07.2015 14:04:41 Вопрос по приминению паттерна "Одиночка" в курсе по созданию движка Сообщение #6
gemiks

gemiks

Мастер

Мастер

Дата регистрации:
17.03.2013 18:03:11

Сообщений: 176

А какие данные должны уничтожиться?
Профиль Ответить
28.07.2015 14:12:12 Вопрос по приминению паттерна "Одиночка" в курсе по созданию движка Сообщение #7
(Алекс)

(Алекс)

Эксперт

Эксперт

Дата регистрации:
21.06.2013 14:56:26

Сообщений: 114

если поле не статическое, то данные, которые в нем хранятся уничтожатся? Соответственно, если поле статическое, то есть принадлежит классу, то данные в нем сохраняются?
Профиль Ответить
28.07.2015 14:13:32 Вопрос по приминению паттерна "Одиночка" в курсе по созданию движка Сообщение #8
gemiks

gemiks

Мастер

Мастер

Дата регистрации:
17.03.2013 18:03:11

Сообщений: 176

Что-то я вообще не могу вникнуть в суть вашего вопроса, или вопросов
Профиль Ответить
28.07.2015 14:17:19 Вопрос по приминению паттерна "Одиночка" в курсе по созданию движка Сообщение #9
(Алекс)

(Алекс)

Эксперт

Эксперт

Дата регистрации:
21.06.2013 14:56:26

Сообщений: 114

ладно, вроде бы то, что я хотел понять, я понял =)
Профиль Ответить
28.07.2015 14:22:03 Вопрос по приминению паттерна "Одиночка" в курсе по созданию движка Сообщение #10
gemiks

gemiks

Мастер

Мастер

Дата регистрации:
17.03.2013 18:03:11

Сообщений: 176

Ну это хорошо) 
Профиль Ответить