LANGUAGE

SEOUL‍
language:twig
Action unknown: siteexport_addpage

<!DOCTYPE markdown>

Twig

pageinfo
status
Draft

개요

Twig는 PHP에서 사용하기 위한 모던 템플릿 엔진이며, Symfony 프로젝트에서 사용하기 위해 개발되었다. 여타의 템플릿 엔진과 비슷하게 간결함과 쉬운 난이도, 기능성, 속도 등에 초점을 두었다.

문법

Twig는 {% ... %}language 형식으로 기본적인 문법을 정의한다. 주석은 {# ... #}을 사용한다.

변수

Twig에서 모든 변수는 객체로 취급되며, 모든 객체는 그 속성을 갖는다.

{# 변수 출력 #}
{{ tech:객체명.속성 }} 

{# 변수 설정 #}
{% set a = 'a' %} 
{% set b = [1, 2] %}
{% set c = {'d': 'e'} %}

Twig는 다음 세 종류의 전역 변수를 갖는다.

  • _self: 현재 템플릿명
  • _context: 현재 context명
  • _charset: 현재 charset명

필터

필터는 주어진 변수를 가공하는 역할을 하며, 파이프 기호 또는 apply 태그로 적용한다.

{# name에서 HTML 태그 제거 후 대문자화 #}
{{ tech:name|striptags|upper }} 

{% apply upper %}
    This text becomes uppercase
{% endapply %}

함수 / 컨트롤

{% for i in range(low=1, high=10, step=2) %}
    {{ i }},
{% endfor %}
{% if users|length > 0 %}
    <ul>
        {% for user in users %}
            <li>{{ user.username|e }}</li>
        {% endfor %}
    </ul>
{% endif %}

inclusion

include 함수를 사용해 다른 파일의 내용을 삽입할 수 있다.

{% for box in boxes %}
    {{ include('render_box.html') }}
{% endfor %}

Backlinks


language/twig.txt · 마지막으로 수정됨: 2023/05/31 07:32 저자 127.0.0.1