За последние 24 часа нас посетили 61565 программистов и 6419 роботов. Сейчас ищут 2155 программистов ...

PSR-15

Тема в разделе "PHP для новичков", создана пользователем auramel, 17 апр 2018.

Метки:
  1. auramel

    auramel Новичок

    С нами с:
    17 апр 2018
    Сообщения:
    2
    Симпатии:
    0
    И вот дошел до этого самого https://www.php-fig.org/psr/psr-15/. Перечитав несколько раз документацию я понял, что ничего не понял... Загуглил, смотрел примеры и че-то совсем уже крыша поехала...

    Я так понял, что, если раньше мы делали для middleware в том же Slim __invoke(), то теперь надо process и, вместо Response, у нас RequestHandlerInterface (что он делает? зачем он?), у которого должен быть реализован метод handle(). И вот теперь вообще запутался... Зачем так сделали? Смотрел на zend strategility (как-то так) и совсем с ума сошел... Еще новое слово (для меня) Pipeline. Я был бы очень благодарен тому, кто сможет как-то разжевать эту новую дичь (psr-15) (лучше всего на каком-нибудь примере).
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    и тишина
    --- Добавлено ---
    Ну я смотрю п. 2. Interfaces, 2.1 Psr\Http\Server\RequestHandlerInterface
    вижу , что там описан интерфейс с одним методом, который принимает экземпляр запроса, возвращает экземпляр ответа. Оба описаны интерфейсами. Что тебя смущает?

    2.2 middleware
    принимает запрос, принимает обработчик, возвращает ответ. Соотв. внутри функции происходит обработка запроса, принимается решение, дёрнуть ли предложенный обработчик или ответить как-то иначе, и возвращается ответ. Что тут смущает?

    Канэц. Больше ничего там толком и нет.
    --- Добавлено ---
    а, да, пайплайн.
    пайплайн архитектура это когда в трубу втекает, из трубы вытекает. каждая труба делает что-то простое, принимает строгоформализованное нечто, отдаёт тоже формализованное такое, что можно засунуть в следующую трубу. А ещё можно всегда доткнуть middleware в любое место. Вот и всё, что нужно про это знать.
    --- Добавлено ---
    раньше была функция. теперь просто функция в экземпляре класса. Это удобнее, т.к. позволяет в этот класс засунуть вспомогательную логику и данные, связанные конкретно с этим обработчиком.
     
  3. auramel

    auramel Новичок

    С нами с:
    17 апр 2018
    Сообщения:
    2
    Симпатии:
    0
    @igordata с Request Handler и пошла вся путаница. https://yiiframework.ru/forum/viewtopic.php?f=34&t=47256 я уже задал аналогичный вопрос. Мне ответили. Стало более-менее понятно. Остался только вопрос с request handler :)

    Спасибо, что попытались помочь!