文档
树枝内部
树枝内部
树枝是可扩展的,你就能破解。记住,你应该尝试创建一个扩展之前,黑客攻击核心,因为大多数可以处理扩展特性和增强功能。这一章也很有用对于那些想理解树枝是如何工作的。
嫩枝是如何工作的呢?
树枝的渲染模板可以概括为四个主要的步骤:
负载模板:如果模板已经编译、加载它,去评价一步,否则:
- 首先,词法分析程序将模板的源代码更容易处理成小块;
- 然后,解析器将标记流转换为有意义的节点树(抽象语法树);
- 最后,编译器AST转换为PHP代码。
- 评估模板:它意味着调用
显示()
编译模板的方法和通过上下文。
Lexer
lexer符一个模板的源代码标记流(每个令牌的一个实例、树枝、令牌
,流的一个实例\树枝\ TokenStream
)。默认的词法分析程序识别13个不同的令牌类型:
\树枝\令牌::BLOCK_START_TYPE
,\树枝\令牌::BLOCK_END_TYPE
:分隔符块({% %}
)\树枝\令牌::VAR_START_TYPE
,\树枝\令牌::VAR_END_TYPE
:分隔符变量({{}}
)