2013-07-29 4 views
0

일부 컨트롤러 스타일의 스크립트를 사용하여 일부 아약스 양식 등의 데이터를 제공합니다. 컨트롤러 오버 헤드가 꽤 높기 때문에 성능상의 이유로이 작업을 수행합니다. 그러나, 나는 약 100보고 있어요 ..symfony에서 현재 사용자를 얻는 간단한 방법

  1. 을 현재 사용자에 따라 어떤 일을하고 싶은, 그래서 사용자를 얻기 위해 가벼운 무게 방법을 부탁합니다 - 컨트롤러 150 MS 응답 시간을 그 아무것도하지 않고보기를 제공하고 있습니다. 정상입니까? 내 기본 PHP 스크립트는 데이터베이스에서 데이터를 얻으려면 반환은 2 - 5 석사

  2. 컨트롤러 컨텍스트 밖에서 어떻게 내가 현재 로그인 한 사용자를 구합니까?

답변

1

이 서비스에 security.context 서비스를 주입하고 사용

$user = $this->sc->getToken()->getUser(); 
+0

흠, 즉 내가 믿는 직접 호출하지 않은 서비스로 그것을 필요 .. 예 : 할 필요가 컨트롤러에서 호출되면 컨트롤러 외부에서이를 수행 할 수있는 방법이 있습니까? –

+1

다른 모든 것은 심포니에서 서비스 여야합니다. 모든 (공개) 서비스는 컨트롤러에서 호출 할 수 있습니다. 그리고 어떤 서비스라도 다른 어떤 서비스도 주입 할 수 있습니다. [서비스 컨테이너] (http://symfony.com/doc/current/book/service_container.html)를 읽으십시오. –

관련 문제