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 md5下16位和32位的实现代码
Apr 09 PHP
PHP foreach循环使用详解与实例代码
May 08 PHP
PHP生成随机用户名和密码的实现代码
Feb 27 PHP
php上传文件,创建递归目录的实例代码
Oct 18 PHP
php在线解压ZIP文件的方法
Dec 30 PHP
php文件上传简单实现方法
Jan 24 PHP
PHP实现事件机制实例分析
Jun 26 PHP
PHP获取昨天、今天及明天日期的方法
Feb 03 PHP
php版微信js-sdk支付接口类用法示例
Oct 12 PHP
php两点地理坐标距离的计算方法
Dec 29 PHP
PHP全局使用Laravel辅助函数dd
Dec 26 PHP
PHP后门隐藏的一些技巧总结
Nov 04 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
Windows下的PHP5.0详解
2006/11/18 PHP
PHP iconv 解决utf-8和gb2312编码转换问题
2010/04/12 PHP
php pki加密技术(openssl)详解
2013/07/01 PHP
PHP使用ob_start生成html页面的方法
2014/11/07 PHP
PHP中substr函数字符串截取用法分析
2016/01/07 PHP
CodeIgniter针对数据库的连接、配置及使用方法
2016/03/03 PHP
浅谈PHP进程管理
2019/03/08 PHP
Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作详解
2019/10/11 PHP
javascript实现可拖动变色并关闭层窗口实例
2015/05/15 Javascript
使用jQuery实现Web页面换肤功能的要点解析
2016/05/12 Javascript
IScroll5 中文API参数说明和调用方法
2016/05/21 Javascript
window.close(); 关闭浏览器窗口js代码的总结介绍
2016/07/14 Javascript
jquery.Callbacks的实现详解
2016/11/30 Javascript
d3.js中冷门却实用的内置函数总结
2017/02/04 Javascript
vue.js 嵌套循环、if判断、动态删除的实例
2018/03/07 Javascript
vue弹窗插件实战代码
2018/09/08 Javascript
[01:19]2014DOTA2国际邀请赛 采访TITAN战队ohaiyo 能赢DK很幸运
2014/07/12 DOTA
[51:05]DOTA2上海特级锦标赛主赛事日 - 5 败者组决赛Liquid VS EG第一局
2016/03/06 DOTA
Python字符串转换成浮点数函数分享
2015/07/24 Python
python+tkinter编写电脑桌面放大镜程序实例代码
2018/01/16 Python
python logging日志模块以及多进程日志详解
2018/04/18 Python
PyQt5每天必学之弹出消息框
2018/04/19 Python
从django的中间件直接返回请求的方法
2018/05/30 Python
python-itchat 统计微信群、好友数量,及原始消息数据的实例
2019/02/21 Python
详解用Python为直方图绘制拟合曲线的两种方法
2019/08/21 Python
Reebonz中国官网:新加坡奢侈品购物网站
2017/03/17 全球购物
JPA面试常见问题
2016/11/14 面试题
优秀团支部事迹材料
2014/02/08 职场文书
消防工作实施方案
2014/06/09 职场文书
交通事故委托书范本
2014/09/28 职场文书
入党自荐书范文
2015/03/05 职场文书
销售员自我评价
2015/03/11 职场文书
nginx基于域名,端口,不同IP的虚拟主机设置的实现
2021/03/31 Servers
React中的Context应用场景分析
2021/06/11 Javascript
深入浅析python3 依赖倒置原则(示例代码)
2021/07/09 Python
css3新特性的应用示例分析
2022/03/16 HTML / CSS