thinkphp5.1框架模板布局与模板继承用法分析

本文实例讲述了thinkphp5.1框架模板布局与模板继承。分享给大家供大家参考,具体如下:

模板全局配置

配置文件template.php添加

//开启全局模板布局
'layout_on' => true,
//全局模板布局文件名
'layout_name' => 'layout'

模板布局

控制器中新建模板文件(application\index\controller\Demo\---test方法)

新建视图文件(application\index\demo\test.html)

模板入口文件(application\index\view\index\index.html)

将公共模板头部和尾部分别单独放到一个html文件中(header.html、footer.html)【application\index\view\】

创建全局模板布局文件(layout.html)【application\index\view\】首先开启布局 layout_on = true

{include file="header"/}
{__CONTENT__}//点位符,默认CONTENT,可在template.php文件中配置 'layout_item' => '{__TEXT__}'
{include file="footer"/}

模板继承

新建公用模板目录(application\index\view\common)

分离头部的尾部(header.html、footer.html)

公共模板文件(父模板文件中只能用include和block标签)

{include file="common/header" /}
{block name="body"}
主体
{/block}
{block name="nav"}
导航
{/block}
{include file="common/footer" /}

子模板文件(只能在block标签内)

{extend name="public/base" /}
{block name="body"}
{__block__}//继承父模板中内容
<h2>模板</h2>
{/block}
{block name="nav"}{/block}//清空父模板中内容

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

(0)

相关推荐

  • ThinkPHP模板之变量输出、自定义函数与判断语句用法

    本文实例讲述了ThinkPHP模板之变量输出.自定义函数与判断语句用法.主要包括变量输出.自定义函数与判断语句三种用法.分享给大家供大家参考.具体分析如下: 模板操作变量输出: 快捷输出变量 复制代码 代码如下: {:function(-)} //执行方法并输出返回值 {~function} //执行方法不输出 {@var} //输出Session变量 {#var} //输出Cookie变量 {&var} //输出配置参数  {%var} //输出语言变量 {.var} //输出GET变量 {^

  • ThinkPHP模板循环输出Volist标签用法实例详解

    本文实例讲述了ThinkPHP模板循环输出Volist标签用法.分享给大家供大家参考,具体如下: volist 标签用于在模板中循环输出数据集或者多维数组. volist 标签 在模块操作中,select() 方法返回的是一个二维数组,可以用 volist 直接输出: <volist name="list" id="vo"> 用 户 名:{$vo['username']}<br /> 电子邮件:{$vo['email']}<br /&g

  • 浅析ThinkPHP的模板输出功能

    ThinkPHP中的每一个xxxAction.class.php文件就代表着一个应用模块,这个Action中的每一个方法(function)代表着一个操作,操作可以分为有输出到模板的操作和只具执行不需要输出的操作. 打开Myapp/Lib/Action/IndexAction.class.php文件,我们可以看到里面的基础代码: class IndexAction extends Action{ public function index(){ } } 对此,需要指出一下几点: 1.在Think

  • ThinkPHP模板输出display用法分析

    本文实例分析了ThinkPHP模板输出display用法.分享给大家供大家参考.具体分析如下: 模板变量赋值后就需要调用模板文件来输出相关的变量,模板调用通过display方法来实现,我们在操作方法的最后使用: 复制代码 代码如下: $this->display(); 就可以输出模板,根据前面的模板定义规则,因为系统会按照默认规则自动定位模板文件,所以通常display方法无需带任何参数即可输出对应的模板,这是模板输出的最简单的用法. 事情总有特例,或者根本不需要按模块进行分目录存放,不过dis

  • ThinkPHP跳转页success及error模板实例教程

    本文以实例讲解了ThinkPHP跳转页面的success与error方法所对应的视图与控制器的实现方法,通过本实例教程可以帮助读者更好的掌握success方法与error方法的使用. 首先是控制器中,可以使用下代码: <?php // 本文档自动生成,仅供测试运行 class IndexAction extends Action { /** +---------------------------------------------------------- * 默认操作 +----------

  • ThinkPHP使用smarty模板引擎的方法

    ThinkPHP支持多种php模板引擎,可以根据个人需要加以配置. 下面我们以Smarty模板引擎为例,给大家说说具体的操作流程! 首先去Smarty官网上下载一个Smarty.本站下载地址:http://www.jb51.net/codes/16086.html. 接下来解压压缩包,会有两个文件夹:demo和libs.打开libs文件夹,复制所有内容. 接下来,打开你网站根目录 下thinkphp的文件夹.里面有个vendor文件夹,这个文件夹是TP调用第三方类库用的,把刚才复制的东西全部粘贴

  • thinkPHP5框架渲染模板的3种方式简述

    本文实例讲述了thinkPHP5框架渲染模板的3种方式.分享给大家供大家参考,具体如下: 默认情况下,控制器的输出全部采用return的方式,无需进行任何的手动输出,系统会自动完成渲染内容的输出. 在控制器里渲染模板 namespace app\index\controller; use think\view; class Index{ public function index(){ $view = new view(); return $view->fetch('index'); } } 直

  • ThinkPHP模板自定义标签使用方法

    使用模板标签可以让网站前台开发更加快速和简单,使用过dedecms.phpcms等内容管理系统的人应该都知道,cms的前台都是使用模板标签来调用数据.以调用文章列表为例: dedecms可以写成: <ul> {dede:arclist row='10' orderby='id desc' titlelen=''} <li>[field:title]</li> {/dede:arclist} </ul> phpcms可以写成: <ul> {pc:c

  • thinkPHP的Html模板标签使用方法

    注意:在使用如<html:select />等标签之前,必须要引入TP的标签库:<tagLib name="html" /> 如果我们现在需要一个select下拉菜单项,那么在ThinkPHP中我们可以这样做. 1.在Action控制器的方法中获取数据,举例如下: 复制代码 代码如下: public function mylist(){ $user = new Model('User'); $list = $user->getField('id,usern

  • Thinkphp模板没有解析直接原样输出的解决方法

    本文实例讲述了Thinkphp模板没有解析直接原样输出的解决方法.分享给大家供大家参考.具体如下: 一.问题: 最近在学习thinkphp模板了,但是发现模板页原样出来了,经过一番艰苦搜索终于找到解决方案. 二.解决方法: 很多人都碰到相同问题,在变量中赋值的字符串中包含的__ROOT__.__PUBLIC__.__APP__,这种字符的, 在模板中display出来的时候都被替换成了真实路径.话说是在写Timi文件管理系统的时候发现的这个问题. 从文件中把源码读出来输出到页面后发现,只要是TP

  • Thinkphp模板中使用自定义函数的方法

    注意:自定义函数要放在项目应用目录/common/common.php中. 这里是关键. 模板变量的函数调用格式:{$varname|function1|function2=arg1,arg2,### } 说明: { 和 $ 符号之间不能有空格,后面参数的空格就没有问题: ###表示模板变量本身的参数位置 : 支持多个函数,函数之间支持空格 : 支持函数屏蔽功能,在配置文件中可以配置禁止使用的函数列表 : 支持变量缓存功能,重复变量字串不多次解析. 使用例子: {$webTitle|md5|st

随机推荐