## 2.6 视图类
~~~
1. 在控制器方法中使用视图方法
2. 编写核心文件2个视图的方法
3. 创建视图文件
4. 传递数据
~~~
### 1. 在控制器方法中使用视图方法
* * * * *
*D:\wamp\www\web.com\app\ctrl\indexCtrl.php*
~~~
<?php
namespace app\ctrl;
class indexCtrl extends \core\thinkphp
{
public function index()
{
$data = "Hello World!";
$this->assign('title', $data);
$this->display('index/index.html');
}
}
~~~
备注:`class indexCtrl extends \core\thinkphp` 我们让index控制器继承框架核心文件,在核心文件中创建2个视图的方法
### 2. 编写核心文件2个视图的方法
* * * * *
*D:\wamp\www\web.com\core\thinkphp.php*
~~~
public $assign;
......
// 传递数据
public function assign($name, $value)
{
$this->assign[$name] = $value;
}
// 显示视图
public function display($file)
{
$file = APP.'/view/'.$file;
if (is_file($file)) {
p($this->assign);
extract($this->assign);
include $file;
}
}
~~~
备注:[extract()](http://php.net/manual/zh/function.extract.php) 从数组中将变量导入到当前的符号表
### 3. 创建视图文件
*D:\wamp\www\web.com\app\view\index\index.html*
~~~
<h1>这是标题</h1>
<h3>段落内容段落内容段落内容段落内容段落内容</h3>
~~~
### 4. 传递数据
*D:\wamp\www\web.com\app\ctrl\indexCtrl.php*
~~~
<?php
namespace app\ctrl;
class indexCtrl extends \core\thinkphp
{
public function index()
{
$data = "Hello World!";
$content = "这是一段内容!!!!!!!!!!!!!!!!!!!";
$this->assign('title', $data);
$this->assign('content', $content);
$this->display('index/index.html');
}
}
~~~
在视图中显示数据:`D:\wamp\www\web.com\app\view\index\index.html`
~~~
<h1><?php echo $title; ?></h1>
<h3><?php echo $content; ?></h3>
~~~
**显示效果:**
![](https://box.kancloud.cn/8b22131848e61be999e8d0b660079c84_742x498.png)