本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
您可能感兴趣的文章:- Thinkphp5.0框架视图view的模板布局用法分析
- Thinkphp5.0 框架视图view的比较标签用法分析
- Thinkphp5.0框架视图view的循环标签用法示例
- Thinkphp5框架实现获取数据库数据到视图的方法
- ThinkPHP视图查询详解
- thinkphp视图模型查询提示ERR: 1146:Table ''db.pr_order_view'' doesn''t exist的解决方法
- thinkphp3.2框架中where条件查询用法总结
- 基于thinkPHP3.2实现微信接入及查询token值的方法
- 分享ThinkPHP3.2中关联查询解决思路
- thinkphp 3.2框架视图模型 实例视图查询结果的二维数组合并操作示例