首页 >常见问题 > 正文

twig有哪些特点?

原创2020-06-30 17:03:490298
周末线上培训班

twig的特点有:简洁、模板化语法、功能强大,提供创建模板所需要的一切功能、简单易学、扩展性、经过完整的单元测试,足够稳定、文档完备、安全、错误提示、快速。

twig的特点

简洁

相对 Twig 而言,在模板中使用 PHP语法会显得特别冗长,尤其需要对输出进行一些处理时,这种情况会变得更加明显:

<?php echo $var ?>
<?php echo htmlspecialchars($var, ENT_QUOTES, 'UTF-8') ?>

实现同样的操作,Twig 使用更简介的语法,易读性也更高

{{ var }}
{{ var|escape }}
{{ var|e }}         {# 变量转义(escape)的简写 #}

模板化语法

Twig 为常见的业务逻辑提供了很多快捷写法,例如遍历数组可能为空时,可以这样判断:

{% for user in users %}
    * {{ user.name }}
{% else %}
    No users have been found.
{% endfor %}

功能强大

Twig 提供创建模板所需要的一切功能,如多重继承、内容块、输出自动转义等等

{% extends "layout.html" %}
{% block content %}
    Content of the page...
{% endblock %}

简单易学

Twig 的语法进行了大量改进,非常简单易学,用户稍加学习就可以快速地进行模板创建。

扩展性

开发人员可以基于 Twig 提供的框架扩展自己的标签、过滤器、函数,来使 Twig 获得各种简单或复杂的能力。

单元测试

Twig 经过完整的单元测试,足够稳定,即使用于大型项目也没有问题

文档完备

Twig 的文档很完备,使用指南和完整的API文档都可以在线阅读:https://twig.symfony.com/doc/1.x/

安全

转出转义:为了安全起见,需要对模板中的代码进行转义。Twig 可以提供全局或代码块级别的自动转义功能

{% autoescape "html" %}
    {{ var }}
    {{ var|raw }}     {# var 不转义 #}
    {{ var|escape }}  {# var 不会重复转义 #}
{% endautoescape %}

沙盒:Twig 可以将任何模板置于沙盒环境中执行,让用户只能访问由开发者定义的一部分标签、过滤器或方法,从而使得程序更加安全。沙盒环境可以全局启用,也可以只为部分模板启用。

{{ include('page.html', sandboxed = true) }}

错误提示

当模板中出现语法错误时,Twig会提供非常实用的信息,指出出错的文件名及代码位置,为开发调试提供了便利性。

快速

Twig 创立的目标之一,就是越快越好。通过将模板编译成优化的PHP代码,实现比传统PHP代码更快的效率。

更多相关知识,请访问 PHP中文网!!

以上就是twig有哪些特点?的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码
  • 相关标签:twig 特点
  • 本文原创发布php中文网,转载请注明出处,感谢您的尊重!
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    推荐视频教程
  • javascript初级视频教程javascript初级视频教程
  • jquery 基础视频教程jquery 基础视频教程
  • 视频教程分类