thinkPHP 模板的使用技巧(十三)

模板的使用技巧:页面跳转 、模板包括、模板渲染、模板的继承

页面跳转

<a href=‘__URL__/index‘>我要跳转到首页面。用这种方法!</a>

一、模板包括

<include file="完整模板文件名称" />

<include file="./Tpl/default/Public/header.html" /> //完整路径

<include file="read" /> //导入当前模块下的read操作模板

<include file="Public:header" /> //包括Public模块下的header操作模板,

//注意不须要header控制器支持,仅仅要Public下有header.html文件就可以引入

*比方你的訪问的是Home/Tpl/Index/index  -->Index/index.html要引用公共的模板文件header.html

1:不同模块下,直接在index.html加上(Home/Tpl/Publi/header.html ):

--  <include file="Public:header" />

2:同级模块下。(Home/Tpl/Index下)

--  <include file="read" />

<include file="blue:User:read" /> //包括blue主题的User模块的read操作模板

<include file="$tplName" />

<include file="header" title="ThinkPHP框架"keywords="开源WEB开发框架"/>

在模板中变量用[变量]接受

<include file=‘file1,file2‘ />

二、模板渲染

1、自己主动开启模板渲染 设置配置文件

‘LAYOUT_ON‘=>true,//开启模板渲染

A:准备一个模板渲染页面,在页面中使用 {__CONTENT__} 接受详细模板页面的内容

B:假设在摸一个详细模板中不希望使用渲染模板,能够在页首加入  {__NOCONTENT__}

2、不开启自己主动模板渲染能够在每个详细页面的页首加入

<layout name=‘layout‘/>

3.使用技巧

在渲染模板文件里也能够使用其它模板文件的内容

<include file=‘Public:header‘/>  //公共的头文件

<body>

<p>这里是渲染页面。!

!</p>

{__CONTENT__}

</body>

</html>

三、模板的继承

模板的继承和模板的渲染有点类似,都是先做好一个父级的一个公共模板,能后其它莫来引入---为

子模板,子模板继承父级模板

时间: 2024-10-19 06:47:24

thinkPHP 模板的使用技巧(十三)的相关文章

转换器2:ThinkPhp模板转Django模板

前天写了个<ThinkPhp模板转Flask模板> 居然被同事鄙视了,原因是他用Django,我用Flask,为了避免被他继续安利Django的强大.我决定写一个Django模板转换器. 为了复用代码,得用继承,我把原代码分成三段,一下子获得了三个转换器. class ConverterTemplateEncoding(object): separators = [('<', '>')] def __init__(self): self.match = {'opening': 0,

(转) ThinkPHP模板自定义标签使用方法

这篇文章主要介绍了ThinkPHP模板自定义标签使用方法,需要的朋友可以参考下 转之--http://www.jb51.net/article/51584.htm 使用模板标签可以让网站前台开发更加快速和简单,使用过dedecms.phpcms等内容管理系统的人应该都知道,cms的前台都是使用模板标签来调用数据.以调用文章列表为例: dedecms可以写成: ? 1 2 3 4 5 <ul> {dede:arclist row='10' orderby='id desc' titlelen='

thinkphp模板中使用函数的方法

1.执行函数并输出返回值:格式:{:function(-)} 例如,输出U函数的返回值: {:U('User/insert')} 编译后的PHP代码是 <?php echo U('User/insert');?> 2.执行函数但不输出 : 格式:{~function(-)} 例如,调用say_hello函数: {~say_hello('ThinkPHP')} 编译后的PHP代码是: <?php say_hello('ThinkPHP');?> thinkphp模板中使用函数的方法

ThinkPHP模板替换与系统常量及应用

默认的模板替换规则: ../Public : 会被替换成当前项目的公共模板目录 通常是 / 项目目录 /Tpl/default/Public/ __PUBLIC__ :会被替换成当前网站的公共目录 通常是 /Public/ __TMPL__ : 会替换成项目的模板目录 通常是 / 项目目录 /Tpl/default/ __ROOT__ : 会替换成当前网站的地址(不含域名) __APP__ : 会替换成当前项目的 URL 地址 (不含域名) __URL__ : 会替换成当前模块的 URL 地址(

ThinkPHP 模板输出 display 方法

默认输出 模板默认输出是指输出指令 display 方法中不带任何参数,系统默认输出对应模板. 格式: $this->display(); 输出对应的模板: TPL/模板默认主题/[分组名/]模块名/操作名+模板后缀 其他输出 输出当前模块的其他操作模板 格式: $this->display('操作名'); 例子: <?php class IndexAction extends Action{     public function index(){         //输出当前模块其他

个人整理thinkphp模板中可用常量,希望能帮助到各位

Thinkphp在模板中预定义了一些常量,方便了我们开发 __ROOT__<br /> __APP__<br /> __URL__<br /> __ACTION__<br /> __SELF__<br /> 执行结果为: /apppath /apppath/index.php /apppath/index.php/Index /apppath/index.php/Index/index /apppath/index.php 用途: __ROOT_

Thinkphp 模板中直接对数据处理 模板中使用函数 中文字符串截取

1.Thinkphp 模板中直接对数据处理:{$data.name|substr=0,3} 2.中文字符串截取函数:mb_substr=0,14,'utf-8' 3.中文字符串统计:iconv_strlen(字符串,"UTF-8") <div style="margin-bottom: 8px;"> <a href="#" target="_blank" class="my_a" >

thinkphp模板中foreach循环没数据的错误解决

从控制器方法中$this->assign();函数将值传递给html模板 但是模板不显示数据,直接出来的是代码,效果就和html中写了php代码不能解析一样. 原来是我将thinkphp框架的引擎和smarty模板引擎的使用方法混了.写成了 查手册知道了thinkphp模板中foreach的使用方法,这才恍然大悟

ThinkPHP 模板截取字符串 [ 转载 ]

对于英文字符可使用如下形式(模板中): {$vo.title|substr=0,5} 如果是中文字符thinkphp提供了msubstr,用法如下: function msubstr($str, $start=0, $length, $charset=”utf-8″, $suffix=true)//使用如下 {$vo.title|msubstr=5,5,'utf-8′,true} 其中msubstr函数说明如下: msubstr($str, $start=0, $length, $charset