ThinkPHP学习之-------视图

视图
 <?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 );
原文地址:https://www.cnblogs.com/g825482785/p/view.html