当前位置: 代码迷 >> PHP >> 继承smarty类时遇到的有关问题,求指导!
  详细解决方案

继承smarty类时遇到的有关问题,求指导!

热度:97   发布时间:2016-04-29 00:50:57.0
继承smarty类时遇到的问题,求指导!!
我直接把smarty的libs目录拷进测试项目中,测试项目很简单,有两个文件demo.php和init.inc.php,然后我在init.inc.php做一些配置,比如界定符、模板目录之类,如果是以这种方式:
PHP code
<?php     include_once './libs/Smarty.class.php';    $tpl=new Smarty;    $tpl->left_delimiter="<!--{";    $tpl->right_delimiter="}-->";?>
配置完成后在demo.php中我这样写
PHP code
<?php         require_once 'init.inc.php';        $title="this is a title";    $content="this is my content";    $tpl->assign("title",$title);    $tpl->assign("content",$content);    $tpl->display("default/test.tpl");?>
显示没问题
如果是另外做一个继承与smarty类的类mySmarty代码如下,在init.inc.php中
PHP code
       <?php     include_once './libs/Smarty.class.php';    class mySmarty extends Smarty{        function mySmarty(){            $this->Smarty();            $this->template_dir="./templates/";            $this->compile_dir="./templates_c/";            $this->config_dir="./configs/";            $this->cache_dir="./cache/";            $this->caching=true;            $this->left_delimiter="<!--{";            $this->right_delimiter="}-->";            $this->assign('app_name','mySmartyTest');        }    }       ?>

在demo.php中我做如下的调用和显示
PHP code
<?php    require_once 'init.inc.php';    $tpl=new mySmarty;    $title="this is a title";    $content="this is my content";    $tpl->assign("title",$title);    $tpl->assign("content",$content);    $tpl->display("default/test.tpl");?>
则会报500错误,到底怎么回事呢,求高手指导,谢谢!!

------解决方案--------------------
你把 php 的错误显示功能打开,就知道哪里有问题了

继承的
如果是 Smarty 2 应该无大错
如果是 Smarty 3 那就是另一回事了
------解决方案--------------------
俺打工六年,就一个经验告诉你,尽早放弃 smarty 这种没人性的模版引擎。
------解决方案--------------------
因为那东西麻烦死了