저는 Symfony2에서 새로 왔으며 내 호스트 이름의 TLD로 언어를 선택하려고합니다.TLF 용 symfony2 언어
-
: 나는 이미 양식 언어를 변경 할 수있는 방법 찾을
- www.hostname.fr => FR
- www.hostname.it => 그
- www.hostname.co.uk =>
(적절한 방법으로) : 새로운 사용자와 연결할 때 http://symfony.com/blog/play-with-the-user-language
을하지만 나는 언어를 선택 할 수 있어야합니다
services:
kernel.listener.domain_langue_listener:
class: acme\DemoBundle\Listener\DomainLangueListener
tags:
- { name: kernel.event_listener, event: kernel.request, method: onDomainParse }
: 지금은
나는 각 요청에 대해 트리거 서비스 리스너를 추가
namespace acme\DemoBundle\Listener;
class DomainLangueListener
{
public function onDomainParse(Event $event)
{
$request = $event->getRequest();
$session = $request->getSession();
preg_match('/[^.]+$/', $request->getHost(), $match);
$session->setLocale($match[0]);
}
}
이 수신기는 작동하지만 난에있는 TLD 일치를 정의하는 몇 가지 매개 변수를 사용하고 싶습니다 어떤 언어인가요?하지만 리스너에서는 컨테이너에 액세스 할 수 없습니다.
$this->container->getParameter('tld_allowed');
다른 방법으로 액세스 할 수 있는지 알고 싶습니다. 리스너의 매개 변수로 변환 또는 호스트 이름으로 언어를 선택하는 다른 방법
답장을 보내 주셔서 감사합니다.