Поколупал доки по Symfony, а именно доку по сборке своего фреймворка на основе его компонентов, ВСЁ понятно и всё работает, но чёрт меня дёрнул прочитать последние строки документации)))
Там автор предлагает роуты засунуть в контейнер:
PHP:
//$routes = include __DIR__ . ‘/../src/app.php’; $container = include __DIR__ . ‘/../src/container.php’; $container->setParameter(‘routes’, include __DIR__ . ‘/../src/app.php’); // это предлагается в документации $request = Request::createFromGlobals(); $response = $container->get(‘framework’)->handle($request); $response->send();но дело в том что подключаемый файл — это объект
а метод контейнера setParameter принимает
array|bool|string|int|float|\UnitEnum|nullНу и зачем автор в официальной документации предлагает помещать в контейнер объект методом, который этого не позволяет делать?
— Добавлено —
файл app.php (по официальной документации)PHP:
$routes = new RouteCollection(); $routes->add(‘leap_year’, new Route(‘/is_leap_year/{year}’, [ ‘year’ => null, ‘_controller’ => ‘\Calendar\Controller\LeapYearController::index’, ])); return $routes;
ссылки
Ссылку легко найти, но они сильно топят за Украину, поэтому выкладывать не буду.
@Вероломство, и что в этом фреймворке от тебя, раз ты даже это сТыздил с сайта Симфони?
@MouseZver The DependencyInjection Component (Symfony Docs)
— Добавлено —от меня в нём понимание того, что автор лепит горбатого
Ему под конец надоело эту хню писать. Он поумничал напоследок и распрощался
Не воспринимай серьезно
@miketomlin я тоже так уже думал, автор троллит
Я что-то ослеп и не вижу где это по ссылке.
@MouseZver The Routing Component (Symfony Docs)
А это где пишется ?
Ну вообще, и лара это «сТыздила» с симфони
видимо там же, где и ссылка из #4 и там где описано в вопросе — последние строки документации
Реал зашквар. На xуй его и в костер с помидорами пидора гнущего всё под себя.
Ищу где эта хрень…
dependency_injection.rst
Думал сначала про кастомный Container из его простой поделки.
Проверил его и нет, не имеет отношения.
пиздую чекать файлик app.
Опа return type Symfony\Component\Routing\RouteCollection
Идем смотреть сам контейнер…
А он ContainerBuilder наследует Container, где setParameter говорит иди наxуй
— Добавлено —Слава Украине
Есть вероятность, что примеры кода для предыдущих версии.
Думаю, что поместив роуты в контейнер как сервис для данного «фреймворка» ничего не поменяется.
PHP:
$container->set(‘routes’, include __DIR__.‘/../src/app.php’); $container->register(‘matcher’, UrlMatcher::class) ->setArguments([new Reference(‘routes’), new Reference(‘context’)]) ;
@MouseZver@Aleksandr.B похоже да, дока по сборке из компонентов не обновляется, хотя всё работает именно до этого момента, видимо поэтому и не обновляется, вроде как мелочь — можно разрулить, ок