这个东东,就得多练多写,无它法。

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模板之一的更多相关文章

  1. ThinkPHP 模板substr的截取字符串函数

    ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码 /** ** 截取中文字符串 **/ function msubstr($str, $start ...

  2. [转]thinkphp 模板显示display和assign的用法

    thinkphp 模板显示display和assign的用法 $this->assign('name',$value); //在 Action 类里面使用 assign 方法对模板变量赋值,无论 ...

  3. Thinkphp 模板中直接对数据处理 模板中使用函数 中文字符串截取

    1.Thinkphp 模板中直接对数据处理:{$data.name|substr=0,3} 2.中文字符串截取函数:mb_substr=0,14,'utf-8' 3.中文字符串统计:iconv_str ...

  4. ThinkPHP 模板判断输出--Switch 标签

    ThinkPHP 模板引擎支持 switch 判断,根据不同情况输出不同的值,格式如下:<switch name="变量名" >    <case value=& ...

  5. thinkphp模板中foreach循环没数据的错误解决

    从控制器方法中$this->assign();函数将值传递给html模板 但是模板不显示数据,直接出来的是代码,效果就和html中写了php代码不能解析一样. 原来是我将thinkphp框架的引 ...

  6. ThinkPHP 模板截取字符串 【转载】

    对于英文字符可使用如下形式(模板中): {$vo.title|substr=,} 如果是中文字符thinkphp提供了msubstr,用法如下: function msubstr($str, $sta ...

  7. (转) ThinkPHP模板自定义标签使用方法

    这篇文章主要介绍了ThinkPHP模板自定义标签使用方法,需要的朋友可以参考下  转之--http://www.jb51.net/article/51584.htm   使用模板标签可以让网站前台开发 ...

  8. thinkPHP 模板的使用技巧(十三)

    原文:thinkPHP 模板的使用技巧(十三) 模板的使用技巧:页面跳转 .模板包含.模板渲染.模板的继承 页面跳转 <a href='__URL__/index'>我要跳转到首页面,用这 ...

  9. thinkPHP 模板中的语法知识 详细介绍(十二)

    原文:thinkPHP 模板中的语法知识 详细介绍(十二) 本章节:介绍模板中的语法,详细的语法介绍 一.导入CSS和JS文件    ==>记住常量的是大写 1.css link .js  sc ...

  10. 转换器2:ThinkPhp模板转Django模板

    前天写了个<ThinkPhp模板转Flask模板> 居然被同事鄙视了,原因是他用Django,我用Flask,为了避免被他继续安利Django的强大.我决定写一个Django模板转换器. ...

随机推荐

  1. 图文讲解Android ImageView的ScaleType

    ScaleType的设置方式包括: 1. 在layout的xml中定义android:scaleType="xxx": 2. 在java代码中调用imageView.setScal ...

  2. Java8学习之异步编程

    异步编程 所谓异步其实就是实现一个无需等待被调用函数的返回值而让操作继续运行的方法 创建任务并执行任务 无参创建 CompletableFuture<String> noArgsFutur ...

  3. .NetCore中EFCore的使用整理(三)-关联表操作

    一.查询关联表数据 StudyAboard_TestContext _context = new StudyAboard_TestContext(); CrmRole role = _context. ...

  4. canvas实现饼状图

    效果图如下: html: <canvas id="myCanvas" width="500" height="500">< ...

  5. 【转载,备忘】SQL Server 更改跟踪(Chang Tracking)监控表数据

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 主要区别与对比(Compare) 实现监控表数据步骤(Process) 参考文献(Refere ...

  6. Pycharm2018中DataBase的使用

    1.点击右侧边栏的DataBase,在出现的Database窗口下点击绿色小加号,选择Data Source,选择需要的数据库类型,此处选择Sqlite 2.配置数据库连接信息 3.选择schema, ...

  7. 在有nginx做反向代理时候,如何获取用户真实Ip信息

    在获取用户的Ip地址时,不一定可以获取到用户真实的地址信息,这要看代理服务器的类型,代理服务器有普通匿名代理服务器,高匿代理服务器,像这种情况很难获取到用户真实的Ip地址 假如用户没有使用匿名代理服务 ...

  8. 如何理解 PHP的依赖注入(DI) 和 控制反转(IoC)

    名词解释: IoC - Inversion of Control 控制反转 DI - Dependency Injection 依赖注入 依赖注入和控制反转说的实际上是同一个东西,它们是一种设计模式, ...

  9. Symfony框架笔记

    控制器获取前端传入的参数 $parameters = $request->request; $data = $parameters->all(); 引用静态资源(js.css.img) 使 ...

  10. 不一样的go语言-玩转语法之一

      这段时间为俗事所累,疲以应付,落下了不少想法,错过了更新的日子.这个专题开始之际,已经准备了不下十几个主题,而在写作的过程中,又有新想法与主题涌现出来.未来预计想写写的内容主要包括: 玩转语法系列 ...