【slim3 + Twig】$_SESSIONを取得してTwigテンプレートで使う

セッション 、$_SESSIONを取得して、

テンプレートエンジンのTwigで使いたいと思い調べたところ、

簡単にグローバル変数として使う事ができました。

 

なお、フレームワークはslim3を利用しています。

 

Twigインスタンス化する時にグローバル変数として$_SESSIONを設定

$app = new \Slim\App($settings);
$container = $app->getContainer();

$container['view'] = function ($container) {

        /**設定情報をもとにTwigをインスタンス化しています**/
	$settings = $container->get('settings');
	$view = new \Slim\Views\Twig($settings['view']['template_path'], $settings['view']['twig']);

        /**セッションをグローバル変数に設定します**/
	$view->getEnvironment()->addGlobal('session', $_SESSION);
	return $view;
};

Twigでの使い方

こんにちは、{{session.username}}さん!