原文: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. 使用ViewPager模拟实现应用程序启动界面

    经常在开发应用程序的时候,软件启动有启用动画界面,一般使用图片来进行界面该版本最新更新等等内容,今天来使用ViewPager来模拟实现这功能,也希望对大家有个小小的参考作用,在以后的项目中能够使用到. ...

  2. 用Eclipse做Android开发时出现java.lang.NoClassDefFoundError问题

    之前有遇到过这个问题,后来解决了,今天又遇到了,但是忘了当时是怎么解决的,费了好长时间,终于又找回解决的方法,现在记录下来,以防以后又遇到. 这个错误出现在我的某一个Activity,但是我反复确认了 ...

  3. db2迁移至oracle过程中的问题

    (1)时间日期问题: db2中‘2013-07-17 00:02:55’   oracle中to_date('2013-07-17 00:02:55' , 'YYYY-MM-DD HH24:MI:SI ...

  4. linux 压缩和解压文件

    一.压缩:20120715文件下面所有的文件 如下: tar -zcvf 20120715.tar.gz  20120715* 二.解压20120715.tar.gz压缩包 如下: tar -xzvf ...

  5. asp.net2.0安全性(1)--用户角色篇(代码实现1)--转载来自车老师

    创建用户: MembershipCreateStatus mc; Membership.CreateUser(txtUid.Text, txtPwd.Text, txtEmail.Text, txtQ ...

  6. php 实时汇率接口

    ​function getExchangeRate($from_Currency,$to_Currency) { $amount = urlencode($amount); $from_Currenc ...

  7. [每日一题] OCP1z0-047 :2013-08-29 NULL............................................................168

    转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/10558305 正确答案:B 用函数可以针对各种数据类型时行操作,包括NULL值在内.其中有 ...

  8. openssl之EVP系列之1---算法封装

    openssl之EVP系列之1---算法封装     ---依据openssl doc/crypto/EVP.pod翻译和自己的理解写成     (作者:DragonKing, Mail: wzhah ...

  9. jsoncpp 不能处理long类型数据

    jsoncpp,是一个c++的解析和生成json的开源工具.假设你的c++程序须要解析或生成json,它会使这个过程变得非常easy! 可是,今天在用jsoncpp进行生成json的时候报了错误,非常 ...

  10. 了解sota字符界面(章节4.1)

    4 SOTA操作 4.1 SOTA字符界面 sotaCC是字符界面管理sota系统程序 . 在/.../sota/bin/目录下,启动sotaCC.在终端的该目录下输入指令“./sotaCC”,启动s ...