当前位置:首页 > CMS教程 > Thinkphp > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2022-01-01 22:03:34 浏览: 评论:0 

这篇文章主要介绍了Thinkphp5.0 框架实现控制器向视图view赋值及视图view取值操作,结合实例形式分析了thinkPHP控制器向视图传值及从视图取值相关操作技巧,需要的朋友可以参考下。

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

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

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

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

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

  1. <?php 
  2. namespace app\index\controller; 
  3. use think\Controller; 
  4. class Index extends Controller 
  5.   public function study_view(){ 
  6.     $this->assign('id',1); 
  7.     $this->assign('name','li lei'); 
  8.     $this->assign('age','12'); 
  9.     return $this->fetch(); 
  10.   } 

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

  1. <?php 
  2. namespace app\index\controller; 
  3. use think\Controller; 
  4. class Index extends Controller 
  5.   public function study_view(){ 
  6.     $this->view->id = 2; 
  7.     $this->view->name = 'li lei'
  8.     $this->view->age = 15; 
  9.     return $this->fetch(); 
  10.   } 

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

  1. <?php 
  2. namespace app\index\controller; 
  3. use think\Controller; 
  4. use think\View; 
  5. class Index extends Controller 
  6.   public function study_view(){ 
  7.     View::share('id',6); 
  8.     View::share('name','zhang san'); 
  9.     View::share('age',20); 
  10.     return $this->fetch(); 
  11.   } 

Thinkphp5.0 视图view取值

  1. <!-- 获取控制器传递的变量 --> 
  2. <li>{$age}</li> 
  3. <!-- 获取服务器的信息 --> 
  4. <li>{$Think.server.HTTP_HOST}</li> 
  5. <!-- 获取env环境变量 --> 
  6. <li>{$Think.env.PHP_STATUS}</li> 
  7. <!-- 获取session --> 
  8. <li>{$Think.session.username}</li> 
  9. <!-- 获取cookie --> 
  10. <li>{$Think.cookie.username}</li> 
  11. <!-- 获取参数 --> 
  12. <li>{$Think.request.id}</li> 
  13. <li>{$Think.get.id}</li> 
  14. <li>{$Think.post.id}</li> 
  15. <!-- 获取常量 --> 
  16. <li>{$Think.const.APP_PATH}</li> 
  17. <li>{$Think.APP_PATH}</li> 
  18. <li>__STATIC__</li> 
  19. <li>__CSS__</li> 
  20. <li>__JS__</li> 
  21. <li>__URL__</li> 
  22. <li>__ROOT__</li> 

模板中使用函数:

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

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

模板中的运算:

  1. <!-- 运算 --> 
  2. <li>{$a+$b}</li> 
  3. <li>{$a-$b}</li> 
  4. <li>{$a*$b}</li> 
  5. <li>{$a/$b}</li> 
  6. <li>{$a%$b}</li> 
  7. <li>{$a+$b+$c}</li> 
  8. <li>{$a++}</li> 
  9. <li>{--$a}</li> 

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

<!-- 使用未定义时可以使用默认值 -->

<li>性别 : {$sex|default='保密'}</li>

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

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

输出结果:  ID : {$id}

关于注释:

<!-- 使用html注释时,用户在查看源码时,是能看到的-->

{/* 使用php的注释时,用户在查看源码时,是看不到的 */}

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

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

Tags: Thinkphp5 0 view

分享到: