Symfony2.7 컨트롤러에서 Twig로 변수 전달

참고서적 : h tp : // 아 mz 응. 및 / 2hR0rdQ

컨트롤러의 $this->render 제 2 인수에 배열로 건네주면 Twig 측에서 픽업합니다.

before


<?php

namespace AppBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;

class ConcertController extends Controller
{
    /**
     * @Route("/page/")
     **/
    public function indexAction()
    {
        return $this->render('Page/index.html.twig');
    }
}

after


<?php

namespace AppBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;

class ConcertController extends Controller
{
    /**
     * @Route("/page/")
     **/
    public function indexAction()
    {
        $information = "add new concert";
        $args = [
            'informations' => [
                '201610' => 'Add new page',
                '201611' => 'Add news page',
                '201612' => 'Delete old page',
            ],
            'title' => 'Example Site'
        ];
        return $this->render(
            'Page/index.html.twig',
            $args
        );
    }
}

Twig에서 데리러



전달한 값은 두 번째 인수의 키 이름으로 선택됩니다.
<html>
<body>
    <h1>{{ title }}</h1>
    <ul>
        {% for key, item in informations %}
            <li>{{ key }}: {{ item }}</li>
        {% endfor %}
    </ul>
</body>
</html>

출력



좋은 웹페이지 즐겨찾기