Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP: ООП
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
wladim
1 / -1 / 1
Регистрация: 03.09.2013
Сообщений: 78
1

Конструктор в классе роутер

08.10.2018, 20:20. Просмотров 766. Ответов 3
Метки нет (Все метки)

Здравствуйте.
Сориентируйте пожалуйста в логике работы: у меня класс роутер (вызывается как объект
PHP
1
$router = new Router($_SERVER['REQUEST_URI']);
) построен так, что метод __construct принимает УРЛ, и уже определяет контроллер и метод из таблицы маршрутов, которые подтягиваются также в этом методе. В общем, ничего нового, НО:
я смотрю реализацию роутеров из других источников, и они не используют конструктор. Используют методы типа run, add и прочее. Почему? Это какое-то установленное правило? У меня нормально все делается и работает как мне нужно в конструкторе.
Я чего-то не знаю?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.10.2018, 20:20
Ответы с готовыми решениями:

наследование в классе нескольких функций из другого или как добавить функцию находящуюся в классе в другой класс
есть класс. есть второй класс. как добавить функцию находящуюся в классе в другой класс(второй) при...

Не заходит в конструктор
class Db{ private $DBH; private $query; public function __construct(){ ...

pdo, конструктор
В конструкторе идет подключение к бд, через pdo. Объект класса PDO лежит в $this->db Создал новый...

конструктор класса
Привет! Есть класс "BD" конструктор класса принимает шесть параметров две из них, при создании...

Конструктор сайтов
Всем привет, подскажите хороший конструктор сайтов. Цель: система учёта заявок, у каждого свой...

3
Para bellum
Эксперт PHP
4106 / 3053 / 986
Регистрация: 06.01.2011
Сообщений: 8,933
09.10.2018, 06:14 2
Цитата Сообщение от wladim Посмотреть сообщение
они не используют конструктор. Используют методы типа run, add и прочее. Почему?
Конструктор -- подготовка объекта (установка нужных для работы параметров, вроде того же REQUEST_URI).
1
wladim
1 / -1 / 1
Регистрация: 03.09.2013
Сообщений: 78
09.10.2018, 07:27  [ТС] 3
Так и да. В конструкторе роутера я это и делаю. Там определяются и присваиваются у меня контроллеры, эшены, параметры.
Принципиальной разницы не вижу, в конструкторе делать или в отдельном методе, ведь на выходе все равно получаю требуемый результат (и обращение к методам run, add и проч., также производится созданием объекта). Вот и хотел знать, почему. Может ответ Para bellum мне показался неясен.
Правда в некоторых случаях вообще используется статика, без создания объекта, ну эта реализация, я так полагаю, выбор каждого.
0
Para bellum
Эксперт PHP
4106 / 3053 / 986
Регистрация: 06.01.2011
Сообщений: 8,933
09.10.2018, 13:05 4
Лучший ответ Сообщение было отмечено wladim как решение

Решение

Цитата Сообщение от wladim Посмотреть сообщение
Может ответ Para bellum мне показался неясен.
Конструктор предназначен для установки состояния объекта. Не нужно из него запускать целевой функционал.
Понятное дело, что работать будет, но это не логично.
Равносильно, как если бы при повороте ключа зажигания у машины начинали бы крутиться колёса.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.10.2018, 13:05

Конструктор сайта PHP
Всем привет! Наверно, вопрос прозвучит очень нубовски, но я абсолютный новичок в вебе. Надо...

Правильно реализовать конструктор
Требуется разработать класс для сохранения многомерных массивов пользовательских данных, у класса...

Конструктор в дочерних классах
Добрый вечер, читаю книгу по ООП, разберая пример возник вопрос на который не нашёл ответа в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru