多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## 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)