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模板转换器. ...
随机推荐
- django orm 改动数据库中已存在的表(添加、删除、修改表字段)
python3 manage.py makemigrations --empty api # 因为我的models.py文件并直接在项目根目录,而是根目录下的api目录中 python3 manage ...
- 【python库】tqdm介绍及常用方法
前言 Tqdm 是一个快速,可扩展的Python进度条,可以在 Python 长循环中添加一个进度提示信息,用户只需要封装任意的迭代器 tqdm(iterator).具体使用可以查看官网. 操作 fr ...
- hashMap的原理
hashMap的原理分析(转载) 1.总结: HashMap是基于哈希表实现的,用Entry[]来存储数据,而Entry中封装了key.value.hash以及Entry类型的next HashMap ...
- 读Secrets of the JavaScript Ninja(二)对象
面向对象和原型 理解原型 在JavaScript中,可通过原型实现继承.原型的概念很简单.每个对象都含有原型的引用,当查找属性时,若对象本身不具有该属性,则会查找原型上是否有该属性. 每个对象都可以有 ...
- POJ-动态规划-背包问题模板
背包问题模板 一.0-1背包 状态:背包容量为j时,求前i个物品所能达到最大价值,设为dp[i][j].初始时,dp[0][j](0<=j<=V)为0,没有物品也就没有价值. 状态转移方程 ...
- Java序列化的方式。
0.前言 本文主要对几种常见Java序列化方式进行实现.包括Java原生以流的方法进行的序列化.Json序列化.FastJson序列化.Protobuff序列化. 1.Java原生序列化 Java原生 ...
- Rust基础
一:编译器 Rust的编译器叫rustc,类似javac一样,负责将源代码编译成可执行文件或者库文件(.a/.so/.lib/.dll等) 二:核心库和标准库 Rust语言由核心库和标准库组成,核心库 ...
- MATLAB爬虫爬取股票数据
近年来,大数据盛行,有关爬虫的教程层次不穷.那么,爬虫到底是什么呢? 什么是爬虫? 百度百科是这样定义的: 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种 ...
- 'cross-env' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 npm ERR! code ELIFECYCLE npm ERR! errno 1
在建立vue项目时报的错误 原因是缺少依赖,在此项目目录下下载依赖即可 cnpm install 发一次建立vue项目的完整顺序吧 //打开要创建的项目路径目录,创建项目 vue init webpa ...
- AtCoder-arc060 (题解)
A - 高橋君とカード / Tak and Cards (DP) 题目链接 题目大意: 有 \(n\) 个数字,要求取出一些数字,使得它们的平均数恰好为 \(x\) ,问有几种取法. 大致思路: 只要 ...