原文:thinkPHP 模板中的语法知识 详细介绍(十二)

本章节:介绍模板中的语法,详细的语法介绍

一、导入CSS和JS文件    ==>记住常量的是大写

1、css link 、js  scr

<link rel='stylesheet' type='text/css' href='__PUBLIC__/Css/test.css'/>

<script src='__PUBLIC__/Js/test.js'></script>

2.import(==默认是在Public文件夹下)

//导入Public文件夹下面的Js目录中的test.js文件,import标签可以省略type属性,默认就是js的

<import type='js' file='Js.test' /> 

<import type='css' file='Css.test' />



//可以更改默认文件夹 设置basepath属性

//就会在 根目录下找到 Other/Js/my.js,就不是默认的Public目录

<import type='js' file='Js.my' basepath='./Other'/>

3.load

//方法可以自动检测导入的文件类型

<load href='__PUBLIC__/Js/test.js' />

<load href='__PUBLIC__/Css/test.css' />

二、分支结构

1、if

<if condition='$sex eq "男"'>

男人哭吧哭吧不是罪!

<else />

做女人挺好的!

</if>





<if condition='$age lt 18'>

未成年

<elseif  condition='$age eq 18'/>

奋斗吧少年!

<else />

成年

</if>

>  gt

<  lt

== eq

<= elt

>= egt

!= neq

=== heq

!== nheq





<switch name='myAge'> //变量不要加 $  直接名字myAge 默认会加$

<case value='1'>太小啦你</case>

<case value='2'>你也太小</case>

<case value='30'>你还差不多</case>

<default/> 这里是默认值

</switch>

三、循环结构

1.for

<table border='1' width='500'>

  /*

   start(必须):循环变量开始值

    end(必须):循环变量结束值

    name(可选):循环变量名,默认值为i

    step(可选):步进值,默认值为1,自加!

    comparison(可选):判断条件,默认为lt

  */

就是我们php for中的i

<for start='0' end='10' name='j' step='2'>

<tr><td>{$j}</td><td>abc</td></tr>

</for>

//倒序

<for start='10' end='00' name='j' step='-2' comparison='gt'>

<tr><td>{$j}</td><td>abc</td></tr>

</for>

</table>





2.volist(数组遍历)

<volist name='list' id='v'>

{$v.username}<br/>

</volist>

//从下表=1的开始取2条

<volist name='list' id='v' offset='1' length='2'>

<{$v}><br>

</volist>

//遍历多维数组

<volist name='arrd' id='v'>

<{$v.id}>--<{$v.username}><br>

</volist>

3.foreach

<foreach name='list' item='v' key='k'>

{$k}-------{$v}<br/>

</foreach>



四、特殊标签(手册也有详细介绍哦)

1、比较标签

eq或者 equal 等于 

模板中://等同于if else的使用  number传的变量

<eq name='number' value='10'>

如果传的name=10我就输出这里也!

<else/>

不等于10我就输出这里哦!

</eq>

neq 或者notequal 不等于 

gt 大于 

egt 大于等于 

lt 小于 

elt 小于等于 

heq 恒等于 

nheq 不恒等于 





2.范围标签(类似if else逻辑和书写方式)

in      

<in name='number' value='9,10,11,12'>

在这些数字里面

<else/>

不在这些数字的范围内

</in>

<notin name='number' value='9,10,11,12'>

在这些数字里面

<else/>

不在这些数字的范围内

</notin>

between

//1-10之间

<notbetween name='number' value='1,10'>

{$number}在1-10之间

<else/>

{$number}不在1到10之间

</between>



notbetween-->标签来判断变量不在某个范围内


<notbetween name="id"value="1,10">输出内容1</notbetween>





3.present

标签来判断模板变量是否已经赋值,

<present name='m'>m有赋值<else/>m没有赋值</present>

4.Empty

empty标签判断模板变量是否为空,

<empty name='number'>number为空赋值<else/>number有值</empty>

5.Defined 

判断常量是否已经定义

6.Define

在模板中定义常量

7.Assing

在模板中给变量赋值



五、其他标签使用

1、*在模板中直接使用PHP代码

<php> echo "我是乐杨俊" </php>  //注意里面只能写php的代码,嵌入tp的标签是不能用的

2、建议更改左右定界符

在配置文件中改变

'TMPL_L_DELIM'=>'<{', //修改左定界符

'TMPL_R_DELIM'=>'}>', //修改右定界符

thinkPHP 模板中的语法知识 详细介绍(十二)的更多相关文章

  1. thinkPHP 模板中的语法

    一.导入CSS和JS文件   1.css link       js  scr        <link rel='stylesheet' type='text/css' href='__PUB ...

  2. 010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二——变量类型——即Java中的数据类型

    010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二--变量类型--即Java中的数据类型 Java中变量的三要素 变量名 变 ...

  3. HTML5中<template>标签的详细介绍

    HTML5中<template>标签的详细介绍(图文) 这篇文章主要介绍了HTML5中的template标签,是HTML5入门中的重要知识,需要的朋友可以参考 一.HTML5 templa ...

  4. Thinkphp框架拓展包使用方式详细介绍--验证码实例(十一)

    原文:Thinkphp框架拓展包使用方式详细介绍--验证码实例(十一) 拓展压缩包的使用方式详细介绍 1:将拓展包解压:ThinkPHP3.1.2_Extend.zip   --> 将其下的 \ ...

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

    1.Thinkphp 模板中直接对数据处理:{$data.name|substr=0,3} 2.中文字符串截取函数:mb_substr=0,14,'utf-8' 3.中文字符串统计:iconv_str ...

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

    从控制器方法中$this->assign();函数将值传递给html模板 但是模板不显示数据,直接出来的是代码,效果就和html中写了php代码不能解析一样. 原来是我将thinkphp框架的引 ...

  7. Linux操作系统中的文件目录结构详细介绍

    "/" :Linux文件系统的入口.也是最高一级的目录. "/bin":基本系统所需要的命令,功能和"/usr/bin"类似,这个目录下的文 ...

  8. (数据科学学习手札32)Python中re模块的详细介绍

    一.简介 关于正则表达式,我在前一篇(数据科学学习手札31)中已经做了详细介绍,本篇将对Python中自带模块re的常用功能进行总结: re作为Python中专为正则表达式相关功能做出支持的模块,提供 ...

  9. ThinkPHP模板中如何操作session,以及如果session中保存的是数组的情况

    在ThinkPHP的模板中操作session时,可以参考ThinkPHP参考文档中的“模板—>系统变量”部分,在默认模板引擎中,语法如下: {$Think.session.user} //输出s ...

随机推荐

  1. 在WINDOWS下 三步快速配置 eclipse c++ 环境

    所需软件 1.Eclipse IDE for C/C++ Developers http://www.eclipse.org/downloads/packages/eclipse-ide-cc-dev ...

  2. Resist the Temptation of the Singleton Pattern

    Resist the Temptation of the Singleton Pattern Sam Saariste THE SiNGLETON PATTERN SOLVES MANY OF YOU ...

  3. vim: 搭建vim看代码的环境

    使用 vim + ctags + cscope + taglist 阅读源码  http://my.oschina.net/u/554995/blog/59927 vim tab变空格 http:// ...

  4. perl 类里的函数调用其他类的函数

    perl 类里的函数调用其他类的函数: package Horse; use base qw(Critter); sub new { my $invocant = shift; my $class = ...

  5. Eclipse用法和技巧十五:自动添加未实现方法1

    java代码中经常要实现一些接口,这个也是java代码独有的地方.实现接口,就意味着要实现这个接口中定义的方法,如果一个个去码出方法就需要记得方法名称等等,就算有内容辅助快捷键帮助,也是很麻烦的.这里 ...

  6. Visual Studio2013创建、公布监控Windows Azure网站

    原文 Visual Studio2013创建.公布监控Windows Azure网站 随着Visual Studio 2013的发布,现在我们可以在Visual Studio内部实现Windows A ...

  7. 手机端viewport的设置规范

    <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale ...

  8. jquery mobile -role

    jquery mobile -role - cc_jony - 博客园 jquery mobile -role   data-page 页面 data-header 页面的头部 data-conten ...

  9. 面试经典-设计包含min函数的栈

    问题:设计包含min函数的栈(栈) 定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素. 要求函数min.push以及pop的时间复杂度都是O(1). 解答:push 和pop的时间复杂度 ...

  10. Swift - 多线程实现方式(1) - NSThread

    1,Swift继续使用Object-C原有的一套线程,包括三种多线程编程技术: (1)NSThread (2)Cocoa NSOperation(NSOperation和NSOperationQueu ...