原文: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. JQuery学习(3)

    创建精灵界面导航: 有以下图,合理的布局让图片正确显示: 先写导航栏html代码: <div id="navMenu"> <ul id="spriteN ...

  2. 如何捕获winform程序全局异常?

    1.在C#中我们如何处理异常? 上面的问题学过C#的问题大家可能都能回答处理,用try-catch-finally具体如下: try { //可能出错的语句 } catch (Exception) { ...

  3. python模块介绍- xlwt 创建xls文件(excel)

    python模块介绍- xlwt 创建xls文件(excel) 2013-06-24磁针石 #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.comqq 37391319 ...

  4. SharePoint2010 部署步骤“激活功能”中出现错误:无法启动计算机“PCName”上的服务SPUserCodeV4

    在SharePoint2010开发中,选择部署类型为“部署为沙盒解决方案”,在部署代码是出现如下错误提示: 部署步骤“激活功能”中出现错误:无法启动计算机“PCName”上的服务SPUserCodeV ...

  5. 基于visual Studio2013解决C语言竞赛题之1077大数相加

        题目 解决代码及点评 /************************************************************************/ /* ...

  6. zTree实现地市县三级级联Action类

    zTree实现地市县三级级联Action类 ProvinceAction.java: /** * @Title:ProvinceAction.java * @Package:com.gwtjs.str ...

  7. HDU 1030 Delta-wave 数学题解

    给出一个数字塔,然后求沿着数字之间的边走,给出两个数字,问其路径最短的长度是多少. 看似一条搜索题目,只是有一定做题经验的人都知道,这个不是搜索题,直接搜索肯定超时. 这个是依据规律计算的数学题目. ...

  8. hbase memstorelab

    关于MemStore的补充 在通过HStore.add向store中加入�一个kv时,首先把数据写入到memstore中.这一点没有什么说明: publiclongadd(finalKeyValue ...

  9. NX-bridge,可以实现无线XBee控制的Arduino板

    ”今天Elecfreaks Studio给你介绍一个新的.很实用的朋友:带有一些奇幻色彩的神秘设备.它是什么呢?它可以完成什么功能呢?它对我们的生活有哪些促进呢?非常感兴趣吧?别着急,我们这就给您详细 ...

  10. [置顶] android关机闹钟设计思路

    1: 首先需要硬件支持,支持alarm中断触发开机,目前高通平台几乎都支持: 2:关机前需要在rtc-xxx.c中做到enable_irq_wake,和不disable alarm功能(默认开机后al ...