thinkphp 模板解析

Controller.php => View.php =>Thinkphp.php =》Template.php => File.php

1 D:\thinkphp\thinkphp\library\think\Controller.php 初始化时(__construct)把:config里关于模板的配置传template和进去

'template' => // 模板引擎类型 支持 php think 支持扩展 'type' =\> 'Think', // 模板路径 'view_path' =\> '', // 模板后缀 'view_suffix' =\> 'html', // 模板文件名分隔符 'view_depr' =\> DS, // 模板引擎普通标签开始标记 'tpl_begin' =\> '{', // 模板引擎普通标签结束标记 'tpl_end' =\> '}', // 标签库标签开始标记 'taglib_begin' =\> '{', // 标签库标签结束标记 'taglib_end' =\> '}', ,

// 视图输出字符串内容替换 'view_replace_str' => \[\],

四个方法:(没什么实际用处,主要负责把内容传递给view里的相对于方法) fetch() assing() engine() display()

这个文件主要实例化视图实例View

2 D:\thinkphp\thinkphp\library\think\View.php

初始化时定义了静态文件路径

root, 'URL ' => request->module() . '/' . Loader::parseName(root . '/static', 'CSS' => root . '/static/js', ];

engine()方法,规定了使用什么模板引擎,默认事Think

D:\thinkphp\thinkphp\library\think\view\driver\Think.php

1 初始化方法里给设置了默认模板路径view_path if (empty(this->config'view_path' = App::$modulePath . 'view' . DS; } 2 fetch() 判断模板是否存在。 调用Temptpl里的fetch方法,把模板路径和解析内容传递过去。

D:\thinkphp\thinkphp\library\think\Template.php 1 初始化方法定义了缓存路径 $this->config'cache_path' = TEMP_PATH;

相关推荐
疯狂打码的少年13 小时前
【计算机网络】子网掩码与子网划分计算(含CIDR表示法)
服务器·笔记·计算机网络·php
cc_yy_zh16 小时前
学习使用kali抓包
服务器·学习·php
ao-weilai18 小时前
Linux网络编程:网络知识基础
linux·网络·php
clz13145211 天前
设备反欺诈的四大支柱:从设备指纹到关联图谱
开发语言·php
PHP实战开发录1 天前
PHP脚本手动能跑定时任务却失败
开发语言·php·开发
彧azz1 天前
图的存储结构详解:邻接矩阵的原理、实现与应用
开发语言·数据结构·学习·php
CRMEB系统商城2 天前
CRMEB标准版系统(Java)v3.1正式发布
java·spring·微信小程序·php·教育电商
hui-梦苑2 天前
[PHP]轻量主题函数WordPress 集成 KaTeX 数学公式渲染
开发语言·php·wordpress·katex
企查查数据服务2 天前
全军禁入下客商准入风控,关联图谱与穿透核查
大数据·开发语言·数据库·php
狗凯之家源码网2 天前
全开源 H5 棋牌对战系统修复优化与二次开发实测
开源·php·棋牌对战