原理
使用模板引擎的好处是数据和视图分离。一个简单的PHP模板引擎原理是
- extract数组($data),使key对应的变量可以在此作用域起效
- 打开输出控制缓冲(ob_start)
- include模板文件,include遇到html的内容会输出,但是因为打开了缓冲,内容输出到了缓冲中
- ob_get_contents()读取缓冲中内容,然后关闭缓冲ob_end_clean()
实现
封装一个Template类
1 | 复制代码<?php |
测试
test.php
1 | 复制代码<?php |
template目录下index.html文件
1 | 复制代码<!DOCTYPE html> |
Tip
为什么display要返回一个字符串呢?原因是为了更好的控制,嵌入到控制器类中。
对于循环语句怎么办呢?这个的话,请看流程控制的替代语法
本文转载自: 掘金