ThinkPHP 3.1.2 模板中的变量
一、变量输出 (重点)
1.标量输出
2.数组输出
{$name[1]}
{$name['k2']}
{$name.k1}
3.对象输出
{$name:k}
{$name->k}
二、系统变量
{$Think.get.id}
三、使用函数
{$name|strtoupper} 生成的编译后文件是 <?php echo (strtoupper($name)); ?>
{$name|date='Y m d H:i:s',###}
四、默认值
{$name|default='这里是默认值'}
五、运算符
+ - * / % ++ --
{$name++} perl 的一些数据结构: zjzc01:/root/test# cat s1.pl
##数组
print "数组\n";
@arr=qw/a1 a2 a3 a4/;
print $arr[0]."\n";
print $arr[1]."\n";
print "hash\n";
##hash
%hash=(a=>1,b=>2,c=>3);
print $hash{a}."\n";
print $hash{b}."\n";
##数组引用
print "数组引用\n";
$arr=[a1,a2,a3,a4];
print $arr->[0]."\n";
print $arr->[1]."\n";
##hash引用
print "hash 引用\n";
$hash={a=>1,b=>2,c=>3};
print $hash->{a}."\n";
print $hash->{b}."\n";
zjzc01:/root/test# perl s1.pl
数组
a1
a2
hash
1
2
数组引用
a1
a2
hash 引用
1
2 //关联数组输出: <?php
// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action {
public function index(){
//调用index.html模板文件
//name表示标识
$arr=array('k1'=>'scan1','k2'=>'scan2');
$this->assign('name',$arr);
$this->display();
}
} <!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
</head>
<body>
{$name['k1']}!!
{$name.k1}!!
</body>
</html> ////输出对象 Administrator@QCEE61NZ66FEX2D /cygdrive/c/wamp/www/thinkphp2/ThinkPHP/Extend/Library/ORG
$ ls
Crypt My Net Util Administrator@QCEE61NZ66FEX2D /cygdrive/c/wamp/www/thinkphp2/ThinkPHP/Extend/Library/ORG 新建my 文件夹 <?php
class test{
public $k='liu!';
}
?> <?php
// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action {
public function index(){
//调用index.html模板文件
//name表示标识
//加载第三方类
import ('ORG.My.test');
//$arr=array('k1'=>'scan1','k2'=>'scan2');
$obj=new test;
$this->assign('name',$obj);
$this->display();
}
} <!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
</head>
<body>
{$name:k}
</body>
</html> {$name:k}
{$name->k} 对象下面的成员属性 // 控制器接收GET传值,分配给name标示 <?php
// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action {
public function index(){
$n=$_GET['name'];
//调用index.html模板文件
//name表示标识
//加载第三方类
import ('ORG.My.test');
//$arr=array('k1'=>'scan1','k2'=>'scan2');
//$obj=new test;
$this->assign('name',$n);
$this->display();
}
} <!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
</head>
<body>
{$name}</br>
</body>
</html> //利用系统变量 {$name}</br> {$Think.get.name}</br> //php编译后文件: $ pwd
/cygdrive/c/wamp/www/thinkphp2/Home/Runtime/Cache Administrator@QCEE61NZ66FEX2D /cygdrive/c/wamp/www/thinkphp2/Home/Runtime/Cache
$ ls
7e4848229090366086cc7eeb3bfc0798.php 9885ecc411f90bec36756701bd64bb4a.php <?php if (!defined('THINK_PATH')) exit();?><!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus庐">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
</head>
<body>
<?php echo ($name); ?></br> <?php echo ($_GET['name']); ?></br> <?php echo (strtoupper($name)); ?>
<?php echo (session('aa')); ?></br>
</body>
</htm //编译后文件: <?php if (!defined('THINK_PATH')) exit();?><!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus庐">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
</head>
<body>
<?php echo ($name); ?></br> <?php echo ($_GET['name']); ?></br> <?php echo (date('Y m d H:i:s',$name)); ?>
<?php echo (session('aa')); ?></br>
</body>
</html
ThinkPHP 3.1.2 模板中的变量的更多相关文章
- ThinkPHP 3.1.2 模板中的基本语法<1>
# # ThinkPHP 3.1.2 模板中的基本语法 一.传统的方式,导入CSS和JS文件 1.css link js scr <link rel='stylesheet' type='tex ...
- django 模板中通过变量替代key取字典内容
模板中通过变量替代key取字典内容 templatetags/├── get_item.py├── __init__.py ###get_item.py # coding=utf-8 from dja ...
- ThinkPHP问题收集:模板中使用U方法时无法嵌套大括号,For标签,插入数据,新增的表字段缓存问题
ThinkPHP模板中使用U方法时无法嵌套大括号需要在control里面用U方法赋值给变量传到模版如:{:U('/Blog/comment/',array('id'=>$id)}$comment ...
- 在Intellij IDEA中修改模板中user变量名称
在Intellij IDEA中的注释模板中的${user}名称是根据当前操作系统的登录名来取的,有时候登录名称和我们实际的user名称并不相同. 修改方法如下: 方法一:可以在settings的fil ...
- yii模板中常用变量总结
yii模板中常用的一些变量总结. 现有这样一个url:http://www.phpernote.com/demos/helloworld/index.php/xxx/xxx 则通过如下方式获取的值对应 ...
- freemarker 模板中定义变量
在模板中能够定义三种类型的变量: 简单变量:它能从模板中的不论什么位置来訪问,或者从使用 include 指令引入的模板訪问. 能够使用 assign 或 macro 指令来创建或替换这些变量. 局部 ...
- c++类模板中静态成员变量的声明定义
我们知道,c++中,类的静态成员是要在.cpp文件中定义的,如果在.h中定义,会出现重复定义. 但是在写类模板时,一般所有的代码都是放在.h文件中的,如果要做分离是一件很麻烦的事.那如果出现了静态成员 ...
- [django]模板中自定义变量&django模板中的变量
django自定义模板变量 context_processors.py def mysetings(request): return { 'NAME': 'maotai' } settings.py ...
- ShopEx 中规格属性添加时,自己主动计算其相应的销售价格,同一时候注意模板中的变量间的计算
在ShopEx中,添加产品的规格时,如颜色.尺寸.是否送货等配置信息,默认情况下,这些内容是须要手动计算的,若仅仅有几个属性值还easy计算,假设每个属性值比較多,通过手动计算将是一个灰常巨大的工作量 ...
随机推荐
- Html5 Video的使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- C++/C#结构体转化-传string给C++
此例是把C#结构传给C++ C++: typedef struct VidyoClientInEventGroupChat_ { /*! Message (contents) to be sent t ...
- switch_case,&&,||,条件操作符和逗号操作符,循环语句
一.switch-case switch-case语句主要用在多分支条件的环境中,在这种环境中使用if语句会存在烦琐且效率不高的弊端. switch(expression) { case const ...
- [C#参考]利用Socket连续发送数据
这个例子只是一个简单的连续发送数据,接收数据的DEMO.因为最近做一个项目,要求robot连续的通过Socket传回自己的当前的位置坐标,然后客户端接收到坐标信息,在本地绘制地图,实时显示robot的 ...
- python进阶6 HTTP协议客户端实现
httplib 1.httplib 是 python中http 协议的客户端实现,可以使用该模块来与 HTTP 服务器进行交互. httplib的内容不是很多,也比较简单.以下是一个非常简单的例子,使 ...
- MYSQL alter procedure alter function 它们只可以更改过程的特性,不可以更改过程的逻辑。
例子: delimiter // create procedure proc_a(in numberA int) 这样create procedure 是正确的 begin select number ...
- Windows phone 8.1 MessageBox 变了哦!
using Windows.UI.Popups; public async void MessageBoxShow(string content, string caption) { MessageD ...
- ACCP6.0 教程课件,可用
下载地址 求分 http://download.csdn.net/detail/qq873113580/6038955 包含ACCP6.0所有,是我朋友的自己保存的,请大家不要修改密码,谢谢 下面就是 ...
- Codeforces Round #242 (Div. 2) <A-D>
CF424 A. Squats 题目意思: 有n(n为偶数)个x和X,求最少的变换次数,使得X的个数为n/2,输出变换后的序列. 解题思路: 统计X的个数ans,和n/2比較,少了的话,须要把n/2- ...
- Debug目录下没有.exe文件
记一下小笔记: VC6.0设置.exe文件的输出路径: Project->Settings->Link Category选择"General" 在Output file ...