#php
#php
Вопрос:
Я подумываю о создании какой-то системы функций «перехвата». В основном это пара функций, которые запускаются до того, как все приложение начнет делать то, что оно должно делать. Я думаю, что в качестве перехвата было бы уместно использовать какую-то аутентификацию. Проверьте, все ли еще пользователь вошел в систему и т. Д. Также должен быть какой-то порядок приоритета.
Но как мне структурировать такую систему перехватов? Как мне его инициализировать?
Я думаю, мне понадобится какой-нибудь класс, чтобы справиться с этим за меня. Метод add_hook и run_hooks или что-то в этом роде.
Ответ №1:
phpBB, программное обеспечение для доски объявлений с открытым исходным кодом, имеет систему перехвата, которую вам может быть полезно изучить. Конечно, большая часть кода будет специфична для фреймворка phpBB, но основная идея, я думаю, будет той же.
Ответ №2:
Я достигаю этого, используя auto_prepend_file
директиву файла php.ini. В моем случае это functions/init.php
, который выполняет такие вещи, как подключение к базе данных, получение пользовательских данных из сеанса, аутентификация, обновление информации пользователя, если это необходимо, и т.д. и т.п.. Звучит как раз то, что вам нужно.