本文实例讲述了Thinkphp5.0 框架实现控制器向视图view赋值及视图view取值操作。分享给大家供大家参考,具体如下:
Thinkphp5.0 控制器向视图view的赋值
方式一(使用fetch()方法的第二个参数赋值):
代码语言:javascript复制<?php
namespace appindexcontroller;
use thinkController;
class Index extends Controller
{
public function study_view(){
return $this- fetch('study_view',[
'id' = 1,
'name' = 'li lei',
'age' = 10
]);
}
}
方法二(使用assign()方法赋值):
代码语言:javascript复制<?php
namespace appindexcontroller;
use thinkController;
class Index extends Controller
{
public function study_view(){
$this- assign('id',1);
$this- assign('name','li lei');
$this- assign('age','12');
return $this- fetch();
}
}
方法三(使用thinkController类的view对象赋值):
代码语言:javascript复制<?php
namespace appindexcontroller;
use thinkController;
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类的静态方法赋值):
代码语言:javascript复制<?php
namespace appindexcontroller;
use thinkController;
use thinkView;
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取值
代码语言:javascript复制<!-- 获取控制器传递的变量 --
<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
模板中使用函数:
代码语言:javascript复制<!-- 使用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
当变量是第一个参数时,不需要用三个#占位。
模板中的运算:
代码语言:javascript复制<!-- 运算 --
<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
为赋值时可以使用默认值:
代码语言:javascript复制<!-- 使用未定义时可以使用默认值 --
<li 性别 : {$sex|default='保密'}</li
使用{literal}{/literal}
可以原样显示php变量:
<!-- 使用leteral标签,实现不编译php --
{literal}
<li ID : {$id}</li
{/literal}
输出结果: ID : {$id}
关于注释:
代码语言:javascript复制<!-- 使用html注释时,用户在查看源码时,是能看到的--
{/* 使用php的注释时,用户在查看源码时,是看不到的 */}
第一种html注释,查看页面源码,能被用户看到,
第二种php注释,查看页面源码,用户看不到。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。