Я использую EventListener, который проверяет права доступа пользователей к каждому контроллеру и регистрирует эти действия. Теперь я хочу добавить уникальный идентификатор для каждого звонка и добавить его в журнал.
Хотя это легко ВНУТРИ EventListener, есть ли способ использовать тот же $var
что было создано в EventListener в контроллере, который вызвал EventListener?
Пример:
Пользователь обращается к Controller :: Something -> EventListener вызывается
уникальный$uid
создается -> использовать это$uid
внутри
контроллер снова.
Мой EventListener:
public function onKernelController(FilterControllerEvent $event)
{
$uid = rand();
...
/* Log Action */
$this->log->writeLog('SOME MESSAGE', __LINE__, 3, $uid);
...
}
Мой контроллер:
/**
* @Route("/admin/_ajax/_saveNewClient", name="saveNewClient")
*/
public function saveNewClientAction(Request $request)
{
//DO STH
...
/* Log Action */
$this->get('log')->writeLog(
'OTHER MESSAGE AFTER EVENTLISTENER', __LINE__, 1, $uid); //$uid from EventListener
...
}
Вы можете использовать сессию:
$session = new Session();
$session->start();
// set and get session attributes
$session->set('LINE', 'value');
$session->get('LINE');
Других решений пока нет …