Thinkphp5.0 框架实现控制器向视图view赋值及视图view取值操作示例
作者:学知无涯 发布时间:2024-05-03 15:51:16
标签:Thinkphp5.0,控制器,视图
本文实例讲述了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程序设计有所帮助。
来源:https://www.cnblogs.com/gyfluck/p/9408437.html


猜你喜欢
- 布尔类型是PHP中 最简单的类型。它的值可以为 TRUE 或 FALSE。如:$foo=false;$foo1=true;echo &quo
- 动态语言与静态语言有很多不同,最大的特性之一就是可以实现动态的对类和实例进行修改,在Python中,我们创建了一个类后可以对实例和类绑定心的
- 有时候我们可能会把CSV中的数据导入到某个数据库的表中,比如做报表分析的时候。对于这个问题,我想一点也难不倒程序人员吧!但是要是SQL Se
- RSS是 Really Simple Syndication的缩写(对rss2.0而言,是这三个词的缩写,对rss1.0而言则是RDF Si
- 一、Scrapy是什么Scrapy 是一个基于 Twisted 的异步处理框架,是纯 Python 实现的爬虫框架,其架构清晰,模块之间的耦
- 不加的话貌似只在ie6出现过问题。出现过:改变图片地址,结果图片不见了,加载样式,但样式文件没了。就像是中断了资源的下载一样,正确时解释是
- 一、安装mongo plugs插件File->SettingPlugins查询Mongo选择Search in repositorie
- 作为六大python可视化库,基本上学会都是可以通吃任何领域的存在,本章要给大家介绍的Altair就是其中之一的可视化库,能够将数据转化为非
- 情人节刚过去几天,但是这和我们程序员有什么关系呢,对我们来说,万物皆对象。但是啊,小编为了讨得仰慕已久的女神的欢心(真香),便用python
- 前言因为昨天重新研究了下python的打包方法,今天一番准备把之前写的一个pdf合并软件重新整理一下,打包出来。但在打包的过程中仍然遇到了一
- Mac 安装Mysql有许多开发的小伙伴,使用的是mac,那么在mac上如何安装Mysql呢?这篇文章就给大家说说。1、首先,登陆Mysql
- Pytorch的backward()函数假若有多个loss函数,如何进行反向传播和更新呢? x = torch.tensor(2.0, re
- 运行的时候,有时候会出现语法错误: IndentationError: unexpected indent可以用如下方法
- 在使用FCKeditor的时候,可能会碰到以下这个问题,就是在编辑器页面出错,提示为:找不到页面/fckeditor/editor/fcke
- 本文实例讲述了Python使用xlrd模块操作Excel数据导入的方法。分享给大家供大家参考。具体分析如下:xlrd是一个基于python的
- 在进行单个爬虫抓取的时候,我们不可能按照一次抓取一个url的方式进行网页抓取,这样效率低,也浪费了cpu的资源。目前python上面进行并发
- 谷歌内部的 python 代码规范熟悉 python 一般都会努力遵循 pep8 规范,也会有一些公司制定内部的代码规范。大公司制定规范的目
- 为了组织search线的设计师交流会,特地去准备了一些资料。《SERP 2010》是其中一个,但是由于时间关系没有进行讨论。原著是英文报告,
- 几周前, Elastic Beanstalk声明在AWS云中配置和管理Docker容器。在本文中,我们通过一个简单的注册表单页面应用去理解D
- 对于一个net开发这爬虫真真的以前没有写过。这段时间开始学习python爬虫,今天周末无聊写了一段代码爬取上海租房图片,其实很简短就是利用爬