Thinkphp5.0 框架实现控制器向视图view赋值及视图view取值操作示例


Posted in PHP onOctober 12, 2019

本文实例讲述了Thinkphp5.0 框架实现控制器向视图view赋值及视图view取值操作。分享给大家供大家参考,具体如下:

Thinkphp5.0 控制器向视图view的赋值

方式一(使用fetch()方法的第二个参数赋值):

<?php
namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
  public function study_view(){
    return $this->fetch('study_view',[
      'id' => 1,
      'name' => 'li lei',
      'age' => 10
    ]);
  }
}

方法二(使用assign()方法赋值):

<?php
namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
  public function study_view(){
    $this->assign('id',1);
    $this->assign('name','li lei');
    $this->assign('age','12');
    return $this->fetch();
  }
}

方法三(使用think\Controller类的view对象赋值):

<?php
namespace app\index\controller;
use think\Controller;
class Index extends Controller
{
  public function study_view(){
    $this->view->id = 2;
    $this->view->name = 'li lei';
    $this->view->age = 15;
    return $this->fetch();
  }
}

方法四(使用View类的静态方法赋值):

<?php
namespace app\index\controller;
use think\Controller;
use think\View;
class Index extends Controller
{
  public function study_view(){
    View::share('id',6);
    View::share('name','zhang san');
    View::share('age',20);
    return $this->fetch();
  }
}

Thinkphp5.0 视图view取值

<!-- 获取控制器传递的变量 -->
<li>{$age}</li>
<!-- 获取服务器的信息 -->
<li>{$Think.server.HTTP_HOST}</li>
<!-- 获取env环境变量 -->
<li>{$Think.env.PHP_STATUS}</li>
<!-- 获取session -->
<li>{$Think.session.username}</li>
<!-- 获取cookie -->
<li>{$Think.cookie.username}</li>
<!-- 获取参数 -->
<li>{$Think.request.id}</li>
<li>{$Think.get.id}</li>
<li>{$Think.post.id}</li>
<!-- 获取常量 -->
<li>{$Think.const.APP_PATH}</li>
<li>{$Think.APP_PATH}</li>
<li>__STATIC__</li>
<li>__CSS__</li>
<li>__JS__</li>
<li>__URL__</li>
<li>__ROOT__</li>

模板中使用函数:

<!-- 使用md5函数 -->
<li>ID : {$id|md5}</li>
<!-- 使用字符串截取函数 -->
<li>用户简介 : {$intro|substr=0,5}</li>
<!-- 使用字符串替换 -->
<li>用户手机 : {$tel|substr_replace='...',3,5}</li>
<!-- 使用格式化时间戳,需要用三个#进行占位 -->
<li>用户手机 : {$time|date='Y-m-d H;i:s',###}</li>
<!-- 使用多个函数函数 -->
<li>ID : {$id|md5|strtoupper}</li>

当变量是第一个参数时,不需要用三个#占位。

模板中的运算:

<!-- 运算 -->
<li>{$a+$b}</li>
<li>{$a-$b}</li>
<li>{$a*$b}</li>
<li>{$a/$b}</li>
<li>{$a%$b}</li>
<li>{$a+$b+$c}</li>
<li>{$a++}</li>
<li>{--$a}</li>

为赋值时可以使用默认值:

<!-- 使用未定义时可以使用默认值 -->
<li>性别 : {$sex|default='保密'}</li>

使用{literal}{/literal}可以原样显示php变量:

<!-- 使用leteral标签,实现不编译php -->
{literal}
<li>ID : {$id}</li>
{/literal}

输出结果:  ID : {$id}

关于注释:

<!-- 使用html注释时,用户在查看源码时,是能看到的-->
{/* 使用php的注释时,用户在查看源码时,是看不到的 */}

第一种html注释,查看页面源码,能被用户看到,

第二种php注释,查看页面源码,用户看不到。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
如何在PHP中使用Oracle数据库(3)
Oct 09 PHP
Zend的MVC机制使用分析(一)
May 02 PHP
php 深入理解strtotime函数的使用详解
May 23 PHP
php实现查询百度google收录情况(示例代码)
Aug 02 PHP
测试php连接mysql是否成功的代码分享
Jan 24 PHP
PHP采集静态页面并把页面css,img,js保存的方法
Dec 23 PHP
PHP贪婪算法解决0-1背包问题实例分析
Mar 23 PHP
PHP使用ODBC连接数据库的方法
Jul 18 PHP
举例讲解PHP面对对象编程的多态
Aug 12 PHP
Yii调试查看执行SQL语句的方法
Jul 15 PHP
微信公众号开发客服接口实例代码
Oct 21 PHP
PHP的new static和new self的区别与使用
Nov 27 PHP
php服务器的系统详解
Oct 12 #PHP
laravel框架 api自定义全局异常处理方法
Oct 11 #PHP
实现laravel 插入操作日志到数据库的方法
Oct 11 #PHP
laravel 获取当前url的别名方法
Oct 11 #PHP
解决PHP curl或file_get_contents下载图片损坏或无法打开的问题
Oct 11 #PHP
解决PHP使用CURL发送GET请求时传递参数的问题
Oct 11 #PHP
ThinkPHP 5.1 跨域配置方法
Oct 11 #PHP
You might like
Discuz 6.0+ 批量注册用户名
2009/09/13 PHP
实用的PHP带公钥加密类分享(每次加密结果都不一样哦)
2014/08/20 PHP
php数组添加元素方法小结
2014/12/20 PHP
微信随机生成红包金额算法php版
2016/07/21 PHP
php设计模式之单例模式用法经典示例分析
2019/09/20 PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
2020/07/24 PHP
Javascript 作用域使用说明
2009/08/13 Javascript
JS的反射问题
2010/04/07 Javascript
JavaScript建立一个语法高亮输入框实现思路
2013/02/26 Javascript
jqGrid日期格式的判断示例代码(开始日期与结束日期)
2013/11/08 Javascript
通过Javascript读取本地Excel文件内容的代码示例
2014/04/08 Javascript
javacript使用break内层跳出外层循环分析
2015/01/12 Javascript
AngularJS 整理一些优化的小技巧
2016/08/18 Javascript
jQuery ajaxForm()的应用
2016/10/14 Javascript
jQuery checkbox选中问题之prop与attr注意点分析
2016/11/15 Javascript
javascript中toFixed()四舍五入使用方法详解
2018/09/28 Javascript
微信小程序身份证验证方法实现详解
2019/06/28 Javascript
javascript二维数组和对象的深拷贝与浅拷贝实例分析
2019/10/26 Javascript
微信小程序自定义tabbar custom-tab-bar 6s出不来解决方案(cover-view不兼容)
2019/11/01 Javascript
Python常见数据结构详解
2014/07/24 Python
windows下python安装pip图文教程
2018/05/25 Python
Python中的 enum 模块源码详析
2019/01/09 Python
Django 创建后台,配置sqlite3教程
2019/11/18 Python
python关闭占用端口方式
2019/12/17 Python
pytorch 图像中的数据预处理和批标准化实例
2020/01/15 Python
Python Scrapy框架:通用爬虫之CrawlSpider用法简单示例
2020/04/11 Python
golang/python实现归并排序实例代码
2020/08/30 Python
金宝贝童装官网:Gymboree
2016/08/31 全球购物
Java如何获得ResultSet的总行数
2016/09/03 面试题
造价工程师个人求职信
2013/09/21 职场文书
英语专业毕业生自荐信范文
2013/12/31 职场文书
职工运动会邀请函
2014/02/02 职场文书
保密工作承诺书
2014/08/29 职场文书
2015年消防工作总结
2015/04/24 职场文书
优秀班干部主要事迹材料
2015/11/04 职场文书
详解MongoDB排序时内存大小限制与创建索引的注意事项
2022/05/06 MongoDB