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

吾爱主题 阅读:130 2021-08-31 16:01:00 评论:0

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

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

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

?
1 2 3 4 5 6 7 8 9 10 11 12 13 <?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()方法赋值):

?
1 2 3 4 5 6 7 8 9 10 11 12 <?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对象赋值):

?
1 2 3 4 5 6 7 8 9 10 11 12 <?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类的静态方法赋值):

?
1 2 3 4 5 6 7 8 9 10 11 12 13 <?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取值

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 <!-- 获取控制器传递的变量 --> < 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 >

模板中使用函数:

?
1 2 3 4 5 6 7 8 9 10 <!-- 使用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 >

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

模板中的运算:

?
1 2 3 4 5 6 7 8 9 <!-- 运算 --> < 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 >

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

?
1 2 <!-- 使用未定义时可以使用默认值 --> < li >性别 : {$sex|default='保密'}</ li >

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

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

输出结果:  ID : {$id}

关于注释:

?
1 2 <!-- 使用html注释时,用户在查看源码时,是能看到的--> {/* 使用php的注释时,用户在查看源码时,是看不到的 */}

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

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

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

原文链接:https://www.cnblogs.com/gyfluck/p/9408437.html

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容