视图
<?php
/*class UserController extends Controller
{
public function index()
{
模板文件的规则:/[模板主题]/控制其名/操作名+模板后缀
//display无参数,默认进入view/User/index.html,index.php,index.htm
$this->display();
}
}*/
?>
1.视图配置 默认在这个文件下操作/home/Common/Conf/config.php
<1.修改模板的视图目录默认视图目录是view.如果想改其他目录可以按照下面的配置进行更改。
'DEFAULT_V_LAYER' => 'Template';
<2.默认情况模板文件名后缀为.html,想改其他的话可以按照下面的配置
'TMPL_TEMPLATE_SUFFIX' => '.php'; //index.php
<3.如果感觉每个模块都要创建相应的目录太过繁琐。可进行配置
'TMPL_FILE_DEPR' => '_', //User_index.php
<4.如果不想将模板存在默认的home下,而放置于外部
'VIEW_PATH' => './Newviews/';
<5.如果系统考虑切换皮肤的情况下,可进行如下配置
'DEFAULT_THEME' => 'defalut'
//切换主题
$this->theme('blue')->display();
2.赋值跟渲染。如果在模板输出变量。必须先控制器中传递给视图。thinkphp中assign这个方法就是对模板赋值
控制器中
//给模板传递变量
$list = array(
array('name' => 'gf','email' => '825482785@qq.com'),
array('name' => 'james','email' => '12323@qq.com')
);
$this->assign('viewlist',$list);
(PS:这个方法必须在display之前进行)
模版中调用变量think提供了一种{$viewlist}的方式,不过大多数情况还是用php本身的写
视图文件中
<?php if(!empty($viewlist)) foreach($viewlist as $k=>$v){?>
<td><?php !empty($v['name']) ? $v['name'] : '';?></td>
<td><?php !empty($v['email']) ? $v['email'] : '';?></td>
<?php }?>
渲染模板输出用的display方法、他提供三个参数$this->display('模板文件','字符编码','输出类型');
下面是一些常用的配置
/home/Common/Conf/config.php
1 <?php
2 return array(
3 //'配置项'=>'配置值'
4 //禁止模块访问
5 //'MODULE_DENY_LIST' => array('Common','Runtime'),
6 //允许模块访问
7 //'MODULE_ALLOW_LIST' => array('Index','Admin'),
8 //设置默认加载模块
9 //'DEFAULT_MODULE' => 'Home',
10 //只允许一个模块
11 //'MULTI_MODULE' => false,
12 //修改PATHINFO的URL分隔符
13 //'URL_PATHINFO_DEPR' => '_',
14 //修改键名称
15 /*'VAR_MODULE' => 'm',
16 'VAR_CONTROLLER' => 'c',
17 'VAR_ACTION' => 'a'*/
18
19 //mysql全局定义
20 'DB_TYPE' => 'mysqli',
21 'DB_HOST' => '127.0.0.1',
22 'DB_USER' => 'root',
23 'DB_PWD' => '123',
24 'DB_NAME' => 'cameramysql',
25 'DB_PORT' => '3306',
26 'DB_PREFIX' => 'cm_',
27 'SHOW_PAGE_TRACE' => true
28
29 //PDO配置
30 /*'DB_TYPE' => 'pdo',
31 'DB_USER' => 'root',
32 'DB_PWD' => '123',
33 'DB_PREFIX' => 'cm_',
34 'DB_DSN' => 'mysql:host=localhost;dbname=cameramysql;charset=utf8',*/
35
36 //修改默认视图文件名
37 'DEFAULT_V_LAYER' => 'Template';
38
39 //修改模板文件名后缀
40 'TMPL_TEMPLATE_SUFFIX' => '.php'; //index.php
41
42 //感觉文件魔木太多比较繁琐时。
43 'TMPL_FILE_DEPR' => '_', //User_index.php
44
45 //将模板文件放置于外部
46 'VIEW_PATH' => './Newviews/';
47
48 //切换系统默认模板
49 'DEFAULT_THEME' => 'defalut'
50 //切换主题
51 $this->theme('blue')->display();
52 );