ホームページ >バックエンド開発 >PHPチュートリアル >Symfony 2 で現在のルート名を取得するにはどうすればよいですか?
Symfony 2 で現在のルートを取得する方法
Symfony 2 で現在のルートを取得することは、次のようなさまざまなタスクで一般的なタスクです。リンクの作成、ユーザー権限の決定、またはコンテキスト依存情報の表示。
ソリューション
現在のルートを取得するには、リクエスト オブジェクトを利用できます。このオブジェクトは、一致したルートなど、受信 HTTP リクエストに関する情報へのアクセスを提供します。
実装
まず、リクエスト オブジェクトをコントローラまたは他のクラスに挿入します。サービスの依存関係として。これを行うには、クラスに @ContainerAware アノテーションを付け、$request プロパティを追加します。
/** * @ContainerAware */ class MyController { private $request; public function __construct(ContainerInterface $container) { $this->container = $container; } }
$request オブジェクトにアクセスできるようになると、get( を使用して現在のルート名を取得できます。 '_route') メソッド:
$routeName = $this->request->get('_route');
$routeName 変数には、現在のリクエストに一致したルート名が含まれるようになります。あなたの例では、これは somePage になります。
以上がSymfony 2 で現在のルート名を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。