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自动更新新闻DIY
Oct 09 PHP
PHP简洁函数小结
Aug 12 PHP
国产PHP开发框架myqee新手快速入门教程
Jul 14 PHP
深入分析PHP引用(&amp;)
Sep 04 PHP
php实现统计网站在线人数的方法
May 12 PHP
php封装好的人民币数值转中文大写类
Dec 20 PHP
PHP对象克隆clone用法示例
Sep 28 PHP
PHP将身份证正反面两张照片合成一张图片的代码
Apr 08 PHP
PHP文件系统管理(实例讲解)
Sep 19 PHP
浅谈PHP中pack、unpack的详细用法
Mar 12 PHP
微信公众平台开发教程④ ThinkPHP框架下微信支付功能图文详解
Apr 10 PHP
TP5框架实现一次选择多张图片并预览的方法示例
Apr 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
PHP将XML转数组过程详解
2013/11/13 PHP
php脚本运行时的超时机制详解
2016/02/17 PHP
PHP严重致命错误处理:php Fatal error: Cannot redeclare class or function
2017/02/05 PHP
php模拟post提交请求调用接口示例解析
2020/08/07 PHP
地震发生中逃生十大法则
2008/05/12 Javascript
写了10年的Javascript也未必全了解的连续赋值运算
2011/03/25 Javascript
使用JS取得焦点(focus)元素代码
2014/03/22 Javascript
jQuery中data()方法用法实例
2014/12/27 Javascript
jQuery插件FusionCharts实现的2D饼状图效果【附demo源码下载】
2017/03/03 Javascript
JS实现分页浏览横向图片(类轮播)实例代码
2017/11/06 Javascript
简单谈谈CommonsChunkPlugin抽取公共模块
2017/12/31 Javascript
详解微信小程序审核不通过的解决方法
2018/01/17 Javascript
VUE+Element UI实现简单的表格行内编辑效果的示例的代码
2018/10/31 Javascript
Vue 组件参数校验与非props特性的方法
2019/02/12 Javascript
Vue开发Html5微信公众号的步骤
2019/04/11 Javascript
微信小程序实现拍照画布指定区域生成图片
2019/07/18 Javascript
JS闭包原理及其使用场景解析
2020/12/03 Javascript
[00:32]2018DOTA2亚洲邀请赛OpTic出场
2018/04/03 DOTA
Mac中Python 3环境下安装scrapy的方法教程
2017/10/26 Python
zookeeper python接口实例详解
2018/01/18 Python
Python 线性回归分析以及评价指标详解
2020/04/02 Python
Python pickle模块常用方法代码实例
2020/10/10 Python
Charlotte Tilbury英国官网:英国彩妆品牌
2017/05/26 全球购物
英国泽西岛植物:Jersey Plants Direct
2019/08/07 全球购物
兰蔻俄罗斯官方网站:Lancome俄罗斯
2019/12/09 全球购物
药店主任岗位责任制
2014/02/10 职场文书
房屋出租协议书
2014/04/10 职场文书
中学生英语演讲稿
2014/04/26 职场文书
银行柜员求职自荐书
2014/06/18 职场文书
租房协议书样本
2014/08/20 职场文书
2014年入党积极分子学习三中全会思想汇报
2014/09/13 职场文书
个人投资合作协议书
2014/10/12 职场文书
介绍信怎么写
2015/05/05 职场文书
2016年端午节校园广播稿
2015/12/18 职场文书
致创业您:正能量激励人心句子(48条)
2019/08/15 职场文书
小米11和iphone12哪个值得买?小米11对比iphone12评测
2021/04/21 数码科技