模板文件的调用方法和display方法完全一样,区别就在于fetch方法渲染后不是直接输出,而是返回渲染后的内容,例如:
$content = $this->fetch('Member:edit');
就是拿到Member 下edit的模板进行渲染。好比公共的模板一样的,多次地方调用可以采用fetch方法
望采纳 Thx
有些时候我们不想直接输出模板内容,而是希望对内容再进行一些处理后输出,
就可以使用fetch方法来获取解析后的模板内容,在Action类里面使用:
$content = $this->fetch();
fetch的参数用法和Display方法基本一致,也可以使用:
$content = $this->fetch('Member:read');
区别就在于display方法直接输出模板文件渲染后的内容,而fetch方法是返回模板文件渲染后的内容。
如何对返回的结果content进行处理,完全由开发人员自行决定了。
这是模板替换的另外一种高级方式,比较灵活,而且不需要通过配置的方式。
注意,fetch方法仍然会执行上面的模板替换操作。