一、Twig的介绍

Twig是功能最全面的现代PHP模板引擎之一,也是最快速的引擎之一。Twig将模板编译为纯粹的优化PHP代码,因此系统开销很小。其特性是原生模板继承,在其中将模板编译为类;在编译过程中完成自动转义,并且有一种安全的沙盒模式。所有这些特性为Twig提供了良好的扩展性。灵活的词法分析程序和分析器让开发人员能够定义自己的标记、过滤器等。

如果你接触过其它的一些基于文本的模版语言,如Smarty、Django或Jinja,你应该有一种宾至如归的感觉。Twig既坚持了PHP的原则又为模版环境添加了非常有用的功能,对设计师和开发人员都非常友好。她的关键特性如下:
快速:Twig把模版编译成完全优化的PHP代码,相比于常规PHP代码,开销减少到最低限度。
安全:Twig有一个沙盒模式用于评估不可信的模板代码。这使得Twig可以被用作那些允许用户修改模版的应用程序的模版语言。
灵活:Twig是由一个灵活的词法分析器和语法分析器驱动。这允许开发人员定义自己的自定义标签和过滤器,并创建自己的DSL。

twig的模板就是普通的文本文件,也不需要特别的扩展名,.html .htm .twig都可以。模板内的变量和表达式会在运行的时候被解析替换,标签(tags)会来控制模板的逻辑下面是个最小型的模板,用来说明一些基础的东西

<!DOCTYPE html>
<html>
<head><title>My Webpage</title>
</head>
<body><ul id="navigation">{% for item in navigation %}<li><a href="{{ item.href }}">{{ item.caption }}</a></li>{% endfor %}</ul><h1>My Webpage</h1>{{ a_variable }}
</body>

里面包含两种符号{% … %}和{{ … }} 第一种用来控制的比如for循环什么的,第二个是用来输出变量和表达式的。

twig可以提高代码的重用度,twig的继承特点可以让我们针对重复的HTML代码生成模板文件,建立通用组件,减少重复代码的编写。

PHP模板引擎twig介绍相关推荐

  1. Java模板引擎 FreeMarker介绍1

    Java模板引擎 FreeMarker介绍 摘要: FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写,FreeMarker被设计用来生成HTML Web页面( ...

  2. PHP模板引擎 twig

    如果你使用过Smarty.Django或者Jinja这类基于文本的模板引擎的话,那么你会觉得Twig是很自然而然的事情.Twig严格遵守了PHP的信念,同时增加了在模板环境中很有用的函数,这些做法使得 ...

  3. php模板引擎smarty,[PHP]模板引擎Smarty介绍

    三.可能遇到的问题 在SMARTY的 官方网站上,有详尽的用户手册,可以选择在线HTML和PDF格式的版本.这里就不再涉及手册上已有的内容,只是把初次使用可能遇到的问题做个解释. 第一个问题就很要命: ...

  4. velocity(vm)模板引擎学习介绍及语法

    velocity模板引擎学习 velocity与freemaker.jstl并称为java web开发三大标签技术,而且velocity在codeplex上还有.net的移植版本NVelocity,( ...

  5. php社区twig,twig模板简单实用介绍

    twig 是php模板引擎 twig帮助文档: https://www.kancloud.cn/yunye/twig-cn/159684 相比之下,Twig拥有非常简洁的语法,它使得模版更具可读性: ...

  6. ThinkPHP6.0使用twig作为模板引擎及自定义过滤器

    ThinkPHP自带的模板引擎用起来很不顺手,好在找到了一个和Jinja2很类似的一个一个模板引擎Twig,可以集成到ThinkPHP中. 文档: https://github.com/yunwuxi ...

  7. 【Vue源码】mustache模板引擎 - 基本使用 - 底层原理 - 手写实现

    文章目录 1. 模板引擎的介绍 1.1 模板引擎是什么? 1.2 模板引擎是怎么来的?(发展历史) 1. 使用原生的DOM操作 2. 使用数组中的join方法 3. 使用ES6反引号的方法 2. mu ...

  8. twig模板引擎使用php,Twig模板引擎用法入门教程_PHP

    本文实例讲述了Twig模板引擎用法.分享给大家供大家参考,具体如下: 介绍 Twig是一个灵活.高效并且安全的PHP模板引擎. 如果你使用过Smarty.Django或者Jinja这类基于文本的模板引 ...

  9. twig模板引擎使用php,Twig模板引擎

    使用Twig Twig是一个灵活,快速,安全的PHP模板语言.它将模板编译成经过优化的原始PHP代码.Twig拥有一个Sandbox模型来检测不可信的模板代码.Twig由一个灵活的词法分析器和语法分析 ...

最新文章

  1. JAVA大一新生要用电脑吗,大一新生有没有必要买电脑?辅导员:倘若不是这三点原因尽量别买...
  2. 再见 Win10!下一代操作系统要来了!
  3. Hadoop计算中的Shuffle过程
  4. Unity4.6.2发布 支持64位iOS
  5. mysql innodb启动失败_mysql启动失败
  6. 什么是Spring Boot以及为什么它是用于创建微服务的首选框架
  7. 前端学习(2440):axios处理文章数据
  8. SetupFactory安装制作心得
  9. java服务器要二次编译,ecology项目二次开发环境搭建
  10. mac composer 安装
  11. 数据结构(C语言版 第2版严蔚敏版)完整课后习题答案汇总
  12. 《深入浅出通信原理》知识总结
  13. 教你如何快速成为一名Java初级程序员
  14. 如何提高团队管理能力4
  15. java list移除所有元素_Java - List集合中如何删除多个元素? remove( )方法 ?
  16. python pandas dataframe 不显示索引_Python DataFrame 设置输出不显示index(索引)值的方法...
  17. 毕业设计 -- 微信小程序选题大全(一)
  18. AppScan--图解web扫描工具IBM Security AppScan Standard
  19. PDMS插件_三维地形工具
  20. 三国志战略版:三势贾的另类搭配,也可以这么强?

热门文章

  1. TCP Pacing功能
  2. python爬取新浪微博热门话题保存到excel等文件
  3. [ReentrantLock] 破坏死锁四个必要条件
  4. PostgreSQL 正则表达式匹配字符串
  5. 命令行如何进入项目文件夹
  6. 一级投资机构投资人“一界君”做客|i网直播间
  7. 通过注册表设置IE的ActiveX运行选项
  8. Linux下关机速度慢
  9. Qt应用程序开发框架-快速入门篇
  10. 正负数的原码反码补码