15.6. Smarty

简介:
			
<?php

//打开错误提示

error_reporting(E_ALL|E_STRICT);

//设定时区

date_default_timezone_set("Asia/Shanghai");

//指明引用文件的路径

set_include_path('.'.PATH_SEPARATOR.'./library'.PATH_SEPARATOR.'./app/model/'.PATH_SEPARATOR.get_include_path());

//必须手动加载Loader.php

include "Zend/Loader.php";

//自动加载类,使用时,直接实例化使用

function __autoload($class){

    Zend_Loader::loadClass($class);

}

   //getInstance()方法用来获取前端控制器实例

   $frontController = Zend_Controller_Front::getInstance();

   //设定前端路由器的工作目录,即cotroller

   $frontController->setControllerDirectory(array("default"=>"app/controller"));

   //抛出异常

   $frontController->throwExceptions(true);

   //设置基地址,方便以后url的跳转用户,注意,区分大小写!

   $frontController->setBaseUrl("/phpzend");

//使用smarty模版需关闭本身的视图助手.

$frontController->setParam("noViewRenderer", true);

       // 关闭错误提示,发生请求错误时候,转到ErrorController的errorAction控制器

//$frontController->throwExceptions(false);

//对。。进行注册

Zend_Registry::set("font", $frontController);

//------------配置Smarty模版 ----------------

include "smarty/Smarty.class.php";

/**

* 对smarty模版进行初始化

**/

$views = new Smarty();

//$views->left_delimiter = "{{";

//$views->right_delimiter = "}}";

$views->compile_dir = "app/template_c";
$views->cache_dir = "app/template_c/cache_c";
$views->template_dir = "app/template";
function smarty_block_dynamic($param,$content,&$views)
{
      return $content;
}

$views->register_block("dynamic","smarty_block_dynamic",false);

Zend_Registry::set("views", $views);

//开始运行程序

$frontController->dispatch();
			
			

			
<?php

   //控制器层

   class IndexController extends Zend_Controller_Action{

     var $views;   /*模板对象*/

     var $data;    /*传递模版变量的对象*/

      function init()

      {

             //拿回注册过的对象

             $this->views = Zend_Registry::get("views");

    }

      function indexAction()

      {

             //定义模版显示的变量

             $data['title']="hello world";

             //传递变量到模版

             $this->views->assign($data);

             //显示模版

             $this->views->display("index/index.tpl");

                       echo "<p>in IndexController::indexAction()</p>";

    }

      function addAction()

      {

      }

}
			
			




原文出处:Netkiller 系列 手札本文作者:陈景峯转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。


目录
相关文章
|
PHP 数据库
fck与smarty的结合使用
配置文件 在smarty的文件中需要显示的地方 提取Fckeditor时,采用如下PHP用$_POST['p_info']得到FCKeditor的值补充:1.此处basepath的路径一定要和上面include的路径一样.
932 0
|
PHP 搜索推荐 数据库
|
Web App开发 Java 测试技术
Smarty使用手记
Smarty是Php下的模板引擎技术,和apache的java 模板技术velocity原理一样,只是velocity适用于java 语言,而Smarty适用于php语言。 首先从http://www.smarty.net/下载smarty,目前最新版本是3.1rc1。
723 0
|
Web App开发 缓存 程序员
smarty
引用:http://www.baike.com/wiki/smarty Smarty是一个使用PHP写出来的模板PHP模板引擎,是目前业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离。
1160 0
|
编解码 JavaScript 前端开发
|
缓存 PHP 数据库
Smarty实例教程(6)
Smarty实例教程 实例篇(二、使用phplib的DB类)前几天有些事情,所以这个实例一直到今天写,为什么要拿phplib中的DB类来讲呢?很多人在学习PHP时,可能最先接触到的模板就是phplib了,原因很简单:很多PHP学习资料中都介绍PHPLIB,phplib在PHP3的时候很火,原因之一就是它实现了在PHP3没有实现的session功能,直到现在还有很多人使用phplib的模板技术,原因就是它很简单。
993 0
|
缓存 PHP 数据库
Smarty实例教程(5)
Smarty例程学习(原创)----实例篇(一、使用php内置mysql语句) Smarty实例教程 ----实例篇(一、使用PHP内置MYSQL函数)从本节开始我们来学习一下如果把Smarty应用到实际的例子中. 为了演示说明,我将以前写的一个站点作为实例来讲来下.先说明一下, 我本人的美术功底不是很强,所以设计出来的页面不太好看,大家就对付着看吧在看本文之前,可以先看看indexbak.htm与newsbak.htm,它们是我们生成后的例图。
917 0

热门文章

最新文章