После реструктуризации моего приложения silex1.2 я столкнулся с:
исключение «RuntimeException» с сообщением «Доступ к службе запросов за пределами области запроса». Попробуйте переместить этот вызов в обработчик перед или контроллер. в ../vendor/silex/silex/src/Silex/Application.php:150
Раньше я настраивал конфигурацию приложения следующим образом:
$app = new Silex\Application();
$app->register(new ServiceControllerServiceProvider());
$app->register(new ConfigServiceProvider($configFile));
$fileFinder = new \Symfony\Component\Finder\Finder();
foreach ($fileFinder->in($configPath . 'country') as $file) {
/* @var SplFileInfo $file */
$app->register(new ConfigServiceProvider($file->getRealPath()));
}
Теперь я хотел заменить цикл foreach
, введя определенное значение, которое я получаю из запроса пользователя. Итак, я хотел получить доступ к $request->query->get('country')
; но я не могу, так как app['request']
в этот момент выходит за рамки.
Я не понимаю сообщение об ошибке, например:
- Когда и почему объекты запросов выходят за рамки в silex?
- Как я должен переместить вызов перед обработчиком и контроллерами, если это самое первое, что я делаю при настройке своего приложения?
По сути, я хочу получить доступ к данным запроса на ранней стадии, чтобы получить одно значение. Как я могу добиться этого, чтобы соответствующим образом загрузить приложение?