ThinkPHP模板之一
这个东东,就得多练多写,无它法。
1,Application\Home\Controller\IndexController.class.php
<?php namespace Home\Controller; use Home\Model\PostModel; use Home\Model\PostViewModel; use Home\Model\UserModel; use Think\Controller; class IndexController extends Controller { public function index(){ $val = 'name'; $array1 = array( 'name' => 'admin_array1' ); $array2 = array( array('name' => 'admin_array2'), array('name' => 'admin_array2'), ); $user = array( 'nickname' => 'Guest', 'mark' => '', ); $userArray = array( 'age' => 100, ); $obj = new \stdClass(); $obj->name = 'admin_obj'; $userObj = new \stdClass(); $userObj->age = 100; $this->assign('val', $val); $this->assign('array1', $array1); $this->assign('array2', $array2); $this->assign('userArray', $userArray); $this->assign('userObj', $userObj); $this->assign('obj', $obj); $this->assign('user', $user); $this->assign('name', 'test'); $this->assign('now', time()); $this->display(); } }
2,Application\Home\View\Index\index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>变量输出</title> </head> <body> <p>var: {$val}</p> <p>一维数组name: {$array1.name}</p> <p>一维数组name: {$array1['name']}</p> <p>二维数据name: {$array2[0]['name']}</p> <p>标准对象name: {$obj->name}</p> <p>输出server变量: {$Think.server.request_uri}</p> <p>输出get变量: {$Think.get.name}</p> <p>输出cookie变量:{$Think.cookie.PHPSESSID}</p> <p>输出配置变量:{$Think.config.name}</p> <p>参数大于一个的函数:{$now|date='Y-m-d H:i:s', ###}</p> <p>参数等于一个的函数:{$name|strtoupper}</p> <p>函数嵌套:{$name|md5|substr=###,0,16}</p> <p>变量默认值测试:{$user.mark|default='此用户很懒'}</p> <p>变量默认值+函数测试:{$Think.get.name|default='名称为空'|empty|var_dump}</p> <h1>数组测试:</h1> <p>'+'=> {$userArray['age']+1}</p> <p>'-'=> {$userArray['age']-1}</p> <p>'*'=> {$userArray['age']*2}</p> <p>'/'=> {$userArray['age']/2}</p> <p>'%'=> {$userArray['age']%2}</p> <h1>对象测试:</h1> <p>'+'=> {$userObj->age+1}</p> <p>'-'=> {$userObj->age-1}</p> <p>'*'=> {$userObj->age*2}</p> <p>'/'=> {$userObj->age/2}</p> <p>'%'=> {$userObj->age%2}</p> </body> </html>
3,测试
ThinkPHP模板之一的更多相关文章
- ThinkPHP 模板substr的截取字符串函数
ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码 /** ** 截取中文字符串 **/ function msubstr($str, $start ...
- [转]thinkphp 模板显示display和assign的用法
thinkphp 模板显示display和assign的用法 $this->assign('name',$value); //在 Action 类里面使用 assign 方法对模板变量赋值,无论 ...
- Thinkphp 模板中直接对数据处理 模板中使用函数 中文字符串截取
1.Thinkphp 模板中直接对数据处理:{$data.name|substr=0,3} 2.中文字符串截取函数:mb_substr=0,14,'utf-8' 3.中文字符串统计:iconv_str ...
- ThinkPHP 模板判断输出--Switch 标签
ThinkPHP 模板引擎支持 switch 判断,根据不同情况输出不同的值,格式如下:<switch name="变量名" > <case value=& ...
- thinkphp模板中foreach循环没数据的错误解决
从控制器方法中$this->assign();函数将值传递给html模板 但是模板不显示数据,直接出来的是代码,效果就和html中写了php代码不能解析一样. 原来是我将thinkphp框架的引 ...
- ThinkPHP 模板截取字符串 【转载】
对于英文字符可使用如下形式(模板中): {$vo.title|substr=,} 如果是中文字符thinkphp提供了msubstr,用法如下: function msubstr($str, $sta ...
- (转) ThinkPHP模板自定义标签使用方法
这篇文章主要介绍了ThinkPHP模板自定义标签使用方法,需要的朋友可以参考下 转之--http://www.jb51.net/article/51584.htm 使用模板标签可以让网站前台开发 ...
- thinkPHP 模板的使用技巧(十三)
原文:thinkPHP 模板的使用技巧(十三) 模板的使用技巧:页面跳转 .模板包含.模板渲染.模板的继承 页面跳转 <a href='__URL__/index'>我要跳转到首页面,用这 ...
- thinkPHP 模板中的语法知识 详细介绍(十二)
原文:thinkPHP 模板中的语法知识 详细介绍(十二) 本章节:介绍模板中的语法,详细的语法介绍 一.导入CSS和JS文件 ==>记住常量的是大写 1.css link .js sc ...
- 转换器2:ThinkPhp模板转Django模板
前天写了个<ThinkPhp模板转Flask模板> 居然被同事鄙视了,原因是他用Django,我用Flask,为了避免被他继续安利Django的强大.我决定写一个Django模板转换器. ...
随机推荐
- Ubuntu下载源码并编译
本文章将介绍如何在Ubunt下进行Linux源码下载,并进行简单的编译步骤. 1.下载linux源码 先查看对应的Ubuntu对应版本源码 $ sudo apt-cache search linux- ...
- canvas实现饼状图
效果图如下: html: <canvas id="myCanvas" width="500" height="500">< ...
- [转帖]NSO到底是个什么样的公司?揭秘三叉戟0day的缔造者
NSO到底是个什么样的公司?揭秘三叉戟0day的缔造者 dawner2016-09-07共248912人围观 ,发现 3 个不明物体其他安全报告 https://www.freebuf.com/art ...
- 资源对象的池化, java极简实现,close资源时,自动回收
https://www.cnblogs.com/piepie/p/10498953.html 在java程序中对于资源,例如数据库连接,这类不能并行共享的资源对象,一般采用资源池的方式进行管理. 资源 ...
- .net Dapper 实践系列(2) ---事务添加(Layui+Ajax+Dapper+MySQL)
目录 写在前面 问题描述 解决方法 具体实现 写在前面 前面我们已经搭建好了项目,这一小节我们使用Dapper 中的事务实现一对多的添加操作. 问题描述 在做添加的时候很头疼需要从页面传递一组数据到后 ...
- .net Dapper 学习系列(2) ---Dapper进阶
目录 写在前面 前期准备 Dapper 单表批量添加 在Dapper 多表查询 在Dapper 调用存储过程 在Dapper 使用QueryMultiple进行多表查询 在Dapper 使用事务进行多 ...
- 微信JS-SDK实现分享功能
1 申请一个微信公众号,并确认在开发–接口权限中拥有分享功能的权限. 2 公众号设置–功能设置:在JS接口安全域名中添加安全域名,这个安全域名不是url,只需添加一级域名即可. 3 开发,基本配置中, ...
- That IP address can't be assigned to.的问题
That IP address can't be assigned to. 烦恼了很久,现在知道了,解决的办法如下 首先确定端口号是不是开放,阿里云的直接在控制台修改 其次 看看 你的地址是不是输入错 ...
- 【面试突击】-缓存击穿(布隆过滤器 Bloom Filter)
原文地址:https://blog.csdn.net/fouy_yun/article/details/81075432 前面的文章介绍了缓存的分类和使用的场景.通常情况下,缓存是加速系统响应的一种途 ...
- python3基础之“术语表(2)”
51.编程: 让计算机执行的指令. 52.代码: 让计算机执行的命令. 53.底层编程语言: 与高级语言相比,更接近二进制的语言. 54.高级编程语言: 读起来像英语的易于理解的语言. 55.汇编语言 ...