Home > PHP Framework > ThinkPHP > Using twig in thinkphp6

Using twig in thinkphp6

Guanhui
Release: 2020-05-09 10:23:00
Original
2935 people have browsed it

Twig introduction

Twig is a flexible, fast and safe PHP template engine.

Fast: Twig compiles templates into pure, optimized PHP code. Its overhead has been reduced to extremely low compared with conventional PHP code.

Security: Twig has a sandbox mode for evaluating untrusted template code. This allows Twig to be used in applications that allow users to modify the template design themselves.

Use Twig in thinkphp6

The first step is to introduce the ThinkPHP extension think-twig

composer require yunwuxin/think-twig
Copy after login

The second step is to change the type in template.php under config Just use it for Twig

Twig specifications

When writing Twig templates, we recommend using the following official coding specifications:

In the initial setting Add a space after the delimiter ({{, {%, and {#)), and add a space before the trailing delimiter (}}, %}, and #}):

  {{ foo }}
    {# comment #}
    {% if foo %}{% endif %}
Copy after login

In use When using a whitespace control character, do not add any space between it and the delimiter:

{{- foo -}}
{#- comment -#}
{%- if foo -%}{%- endif -%}
Copy after login

Add a space before and after the following operators: comparison operators (==, !=, <, >, >=, <=), mathematical operators ( , -, /, *, %, //, **), logical operators (not, and, or), ~, is, in, and ternary operations Symbol (?:):

 {{ 1 + 2 }}
     {{ foo ~ bar }}
     {{ true ? true : false }}
Copy after login

In hashes, add a space after:, in hashes and arrays, also add a space after:

 {{ [1, 2, 3] }}
     {{ {&#39;foo&#39;: &#39;bar&#39;} }}
Copy after login
Copy after login

Do not use parentheses in expressions Add spaces before and after:

{{ 1 + (2 * 3) }}
Copy after login

Do not add spaces before and after the string delimiter:

{{ &#39;foo&#39; }}
    {{ "foo" }}
Copy after login

Do not add spaces before and after the following operators: |,., .., []:

{{ foo|upper|lower }}
    {{ user.name }}
    {{ user[name] }}
    {% for i in 1..12 %}{% endfor %}
Copy after login

Do not add spaces before and after parentheses in filters and function calls:

   {{ foo|default(&#39;foo&#39;) }}
     {{ range(1..10) }}
Copy after login

Do not add spaces at the beginning and end of arrays and hashes:

 {{ [1, 2, 3] }}
     {{ {&#39;foo&#39;: &#39;bar&#39;} }}
Copy after login
Copy after login

Variable names must contain lowercase letters and underscores:

 {% set foo = &#39;foo&#39; %}
     {% set foo_bar = &#39;foo&#39; %}
Copy after login

Indent code within tags (using the same indentation as the target language for template rendering)

 {% block foo %}
        {% if true %}
            true
        {% endif %}
     {% endblock %}
Copy after login



The above is the detailed content of Using twig in thinkphp6. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template