1、评价一个网站的好坏,最直观的印象莫过于网页的视觉效果了。MVC设计模式中最核心的概念就是视图与逻辑分离,本揍茏壅混文将会介绍ThinkPHP内置的视图引擎,熟悉框架的视图处理方式,将能够有效提高设计人员和开发人员的工作效率。1.创建和使用视图视图,通俗地讲就是网页。视图的呈现需要视图引擎来运算,在主流的PHP MVC框架中都有各自的视图解释引擎,最常见的是使用标准的PHP来解释,还有XML、XHML、Smarty、TagLib等。对于Smarty,相信接触过PHP的读者都已经有所了解,这里需要重点理解TagLib及XML解释方式。ThinkPHP的模版引擎高效之处在于灵活的视图标签,熟悉这些标签的使用方式将能够提高视图模版的设计水平。接下来将从基本的创建视图开始,然后深入介绍视图引擎的使用。创建一个视图可分为以下几个步骤。首先确定视图模版的分类及模版的存放位置,例如Tpl/Index/index.html,其中Index对应控制器;Index.html对应控制器方法。如果使用模块分组的方式,需要在Index目录前加上对应的分组名称目录。系统通过DEFAULT_THEME配置项指定项目视图模版的主题,默认为空主题。应用多主题的好处是可以方便地在网站中应用多种模版。打开index.html,代码如下所示
2、上述代码中,在视图模版中使用了变量{$title},该变量的值由控制器方法提供。需要注意的是,使用默认的{$}边界符,在视图模版中使用JavaScript等脚本时,有可能造成冲突。安全起见,这里需要将默认的变量符号改成<!--{$}-->,Conf/config.php配置信息如下:
3、读者可以根据需要进行修改,另外建议将边界符配置放到全局配置文件中。此时index.html模版中代码如下所示
4、最后,需要在控制器方法中使用assign为变量赋值,如以下代码所示
5、as衡痕贤伎sign是默认视图引擎的一个实例方法,该方法用于分配变量,变量的值可以是PHP支持的数组、对象或者PHP变量。ThinkPHP内置了多种视图引擎,在默认情况下系统会使用内置的视图引擎,如果使用第三方的视图引擎,变量的分配方式会有所不同。视图引擎的最终运行结果将转成标准的PHP,<!--{$}-->边界符也会被解释成标准的PHP变量,,如以下代码所示。
6、ThinkPHP默认的视图引擎支持标准的PHP代码。如果使用PHP代码,模版标签的转换步骤将省略,从而在一定程度上提高性能。要启用PHP代码解释,需要修改配置项TMPL_DENY_PHP值为false或者'TMPL_ENGINE_TYPE' => 'PHP'。