Анна

Добрый день

В примере из урока $response изменяется в 2 строчках. А не должно ли это все происходить в рамках одного fluent interface? Разве мы возвращаем $response с текстом 'Page not found'? $response же иммутабельный или нет?


$app->get('/schools/{id}', function ($request, $response, array $args) use ($repo) {
    $id =  $args['id'];
    $school = $repo->find($id);

    if (!$school) {
        $response->getBody()->write('Page not found'); // Тут изменяем $response
        return $response->withStatus(404); // но тут то уже другой $response (без изменений выше)
    }
})->setName('school'); ```
1 1

Kirill Mokevnin

Да так сработает. Я сейчас понял что не дописал эту информацию в уроке PSR7. Я его обновил, посмотрите пожалуйста)

1

Похожие вопросы

Дмитрий Темин около 10 часов назад →

Добрый день! Тесты хотят видеть в ответе строку определенного вида для запроса следующей и предыдущей стра...

Артур Крючок 05 мая 2020 →

Возможно htmlspecialchars тут лишний, с учетом того, что эти данные берутся из файла или БД.

pttrulez 21 октября 2019 →

Напомните, пожалуйста, к чему мы обращаемся через $this внутри обработчика? Например $this->get('renderer'...

Руслан Куга 24 сентября 2019 →

https://ru.hexlet.io/code_reviews/151051#file-0 1,5 часа ушло. долго пытался сделать через array_slice, но ...

Денис Потехин 22 сентября 2019 →

Непонятно, как в задании быть с репозиторием? Создавать его как стандартный объект Repository? Или он тут в...

Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Javascript, PHP, Python и Java.

Хекслет

Подробнее о том, почему наше обучение работает →