# Koenig (04.12.2016 / 19:01)взаимодействие с чем?
Delphinum, можно на пальцах обрисовать взаимодействие eventmanager из zf так как я что то не догнал, когда он все успевает регистрировать
# Koenig (04.12.2016 / 19:01)взаимодействие с чем?
Delphinum, можно на пальцах обрисовать взаимодействие eventmanager из zf так как я что то не догнал, когда он все успевает регистрировать
# AlkatraZ (04.12.2016 / 21:46)Целей несколько:
Вопрос: ЗАЧЕМ?
Убедительного ответа я даже из первоисточников не получил.
# AlkatraZ (04.12.2016 / 22:07)за 10 минут впилил, единственное что пришлось в логике делать, это отдать чистый текст описания без тегов, в шаблон, надеюсь ты не собираешься из этого делать отдельную библиотеку на 10-15 файлов)))
Не. генерится то в зависимости от контента
К примеру в библе, если статья с картинкой?
Там верстальщик не причем.
Delphinum, да хотя бы с mvc
просто какая то скрытая работа у событий. не пойму я эту магию. где начинается и где заканчивается
Koenig, у mvc событийная модель запутанная, согласен. Сам далеко не сразу в нее въехал.
Если на пальцах то нужно два объяснения:
1. Событийная модель в общем
Смысл здесь в том, чтобы использовать события не просто как точки для реакции на работу алгоритма (обычно события используются именно так), а как точки "включения" в этот алгоритм. Вот пример:
class Router{
...
public function route($uri){
// Событие для разделения URI на части
$uriComponents = $this->eventManager->trigger('prepare', ['uri' => $uri]);
// Событие для роутинга по частям URI
$controller = $this->eventManager->trigger('route', ['uri' => $uri, 'components' => $uriComponents]);
return $controller;
}
}# Delphinum (05.12.2016 / 11:44)Честно говоря, я считаю "событийную модель" насильно притянутую "за уши" и не подходящую для мира РНР.
1. Событийная модель в общем
AlkatraZ, в мире php события аналогичны паттерну Observer, и так же используются. Это не то же самое, что события в JS на пример.
Лично я для себя выделил новый паттерн, который можно назвать "контроллер событий" или "экшены событий". Очень полезно для систем, которые сопровождают операции пользователя какими то связанными действиями, типа: отправить письмо по email, отправить SMS, оповестить "учителя" и т.д.
# Delphinum (05.12.2016 / 15:12)Я не про это, а про событийное построение MVC.
AlkatraZ, в мире php события аналогичны паттерну Observer, и так же используются. Это не то же самое, что события в JS на пример.
AlkatraZ, нет, в зенде MVC построено не по классическим канонам SmallTalk, там другая реализация. Говоря коротко, зенд не пытается связать представление с моделью через события, как это предложено в классическом MVC, зенд предлагает шаблон для создания очень гибких классов, основанный на событии. Класс не выполняет какой то алгоритм, а просто последовательно бросает пачку событий и возвращает результаты их обработки. Это довольно необычная схема, потому многим она не понятна сходу.
# Delphinum (05.12.2016 / 15:19)Ну Зенд - там вообще отдельная страна, хотя мне лично их подход нравится больше всего, ибо классический.
AlkatraZ, нет, в зенде MVC построено не по классическим канонам SmallTalk, там другая реализация. Говоря коротко, зенд не пытается связать представление с моделью через события, как это предложено в
а просто последовательно бросает пачку событий и возвращает результаты их обработкиОни с прошлого года выкатили дальнейшую реализацию этого механизма (собственно именно на нем и планирую делать mobiCMS). Там уже про классические "события" можно забыть. Вместо этого есть Middleware и пакет zend-stratigility, который является "крутилкой-исполнялкой" этих middleware.