本文实例讲述了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程序设计有所帮助。