[thinkPHP5项目实战_08]模板分离和URL生成
来源:互联网 发布:hd平板软件市场 编辑:程序博客网 时间:2024/05/17 23:18
1.模板分离
在前端网页项目中不同的页面存在公共的模块,例如头部、底部和侧边栏等,使用tp5的模板分离可以将这些公共模块抽出,在需要的页面进行引入减少前端代码量,提高运行效率
以前台页面为例,在application/index/view下面新建一个Public文件夹,用于存放页面公共模板,分别新建header.html,resource.html,footer.html,sidebar.html将网页公共部分提取出来
2.模板引入
分久必合,在每个视图中分别使用包含文件的方法引入模板文件:
模版表达式的定义规则为:模块@控制器/操作
例如:
{include file="public/header" /} // 包含头部模版header{include file="public/menu" /} // 包含菜单模版menu{include file="blue/public/menu" /} // 包含blue主题下面的menu模版例如在本项目中的index分别引入各个公共文件:
3.URL生成
“ThinkPHP5.0支持路由URL地址的统一生成,并且支持所有的路由方式,以及完美解决了路由地址的反转解析,无需再为路由定义和变化而改变URL生成。”
因此可以使用URL生成来确定路由方式;
本项目路由在header.html文件中,使用url助手函数引入对应的控制器及操作:
<div class="blog-masthead"> <div class="container"> <nav class="blog-nav"> <a class="blog-nav-item" href="{:url('index/index')}">Home</a> <a class="blog-nav-item" href="{:url('lists/index')}">List</a> <a class="blog-nav-item" href="{:url('article/index')}">Article</a> <a class="blog-nav-item" href="{:url('search/index')}">Search</a> <a class="blog-nav-item" href="{:url('guest/index')}">Guestbook</a> </nav> </div></div>
在各个页面对应的控制器中使用模板替换,以lists为例(list是PHP关键字不能使用list)
<?phpnamespace app\index\controller;use think\Controller;class Lists extends Controller{ public function index() { return $this->fetch('lists'); }}
完成模板替换后,点击tab可路由到对应页面:
阅读全文
0 0
- [thinkPHP5项目实战_08]模板分离和URL生成
- ThinkPHP5模板分离
- [thinkPHP5项目实战_05]自动生成目录结构
- thinkPHP5 生成项目目录
- [thinkPHP5项目实战_10]栏目列表输出和删除
- [thinkPHP5项目实战_18]友情链接界面搭建和数据添加
- [thinkPHP5项目实战_21]管理员添加、删除和修改
- [thinkPHP5项目实战_31]结语和GitHub源码下载地址
- ThinkPHP5.0---------URL和路由
- thinkphp5实战系列(三)入口文件隐藏和url路由优化
- thinkphp5.0学习(四):入口文件、路由模式、路由设置和url生成
- ThinkPHP5 前台模板引入与分离 开发环境debug
- [thinkPHP5项目实战_06]引入前台页面
- [thinkPHP5项目实战_11]栏目修改
- [thinkPHP5项目实战_14]场景验证
- [thinkPHP5项目实战_16]文章列表展示
- [thinkPHP5项目实战_17]文章编辑
- [thinkPHP5项目实战_19]模型添加数据
- Profile(统计一个消息处理所用的系统时间)
- Maven的配置文件pom.xml
- mysql 递归查询
- 笔试编程题总结
- algorithm头文件下的常用函数
- [thinkPHP5项目实战_08]模板分离和URL生成
- swift block
- OOAD初学
- 指针函数与函数指针的区别
- Windows(CRLF)格式与Unix(LF)格式转换
- 打包
- 神经网络NN简单理解以及算法
- 深入理解Java虚拟机(8)-.Class文件格式(七)
- redis 中pipline,mset, mget使用对比