创建模板

### View模板 在MVC模式中,V即View,也就是模板(视图);它主要用于显示最终的数据处理结果。 #### 模板的配置 在config目录的Config.php文件中,可以对模板自由配置,配置文件是一个数组。元素如下: <?php return array ( 'domain' => '程序域名', 'mobile_view' => 'phone', 'computer_view' => 'phone', 'chinese_php' => true, 'extend_php' => true, 'url_rewrite' => 0, 'url_explode' => '/', 'cache_type' => 'file', 'image_size' => '2048', 'video_size' => '100000', 'file_size' => '20480', 'php_debug' => '1', 'md5_key' => 'ad0151545485ww', 'redis_ip' => '127.0.0.1', 'redis_port' => '6379', 'redis_pass' => '12345', );` 数组中的mobile_view , computer_view元素分别对应手机模板和电脑模板,其模板位于view目录中。 #### 控制器的创建 程序的模板是在view目录的。 在创建控制器时后缀必须的.tp.php,否则模板引擎识别不到模板文件,导致出错。 #### 模板的使用 在Controller类中,我们提供了value和display这两个方法,value方法主要的目的就是将控制器的变量传递到模板中,而display则是对模板进行解析然后输出。 #### 例子 <?php namespace app\http\controller; use Trauben\http\Controller; class Test extends Controller { public function index() { $name = 'lujia'; // 控制器变量 $this->value('content', '一段文字'); // 在模板中创建content变量 $this->value('name', $name); // 将name变量传递到模板中 $this->display('test.tp.php'); // 解析test模板 } } /view/phone/test.tp.php模板文件: <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <b>{$content}</b> 我的名字是{$name} </body> </html> ` 执行结果: ![0ea333beb979b328be18f5cd74d2e21.png](https://cos.easydoc.net/21946415/files/lfdrha3m.png) ## 模板语法 我在框架中定义了一套模板语法,可以极大简化PHP代码,避免混合HTML开发后导致的代码可读性差。 PHP代码中的”\<?php ?>“标签在模板中可以用花括号”{ }“代替 例如 \<?php echo $a ?> 在模板中可以写成 {\$a} 如果你不希望变量被输出或者你在设置变量时,则可以写成: {php $a = xxxx } 判断循环语句也支持简化 例如 ”\<?php if (xxxx): ?> “ 可以写成 {if xxxxx}