学习 PHP模板引擎Smarty入门使用 出错:C:\AppServ\www\mb\smarty\Smarty.class.php on line 780

example6.tpl模板文件目录templates<html><head><title>这是一个foreach使用的例子</title></head><body>这里... example6.tpl 模板文件 目录 templates
<html>
<head><title>这是一个foreach使用的例子</title></head>
<body>
这里将输出一个数组:<br>
{foreach from=$newsArray item=newsID}
新闻编号:{$newsID}<br>
新闻内容:{$newsTitle}<br><hr>
{foreachelse}
对不起,数据库中没有新闻输出!
{/foreach}
</body>
</html>

example6.php 目录 根目录下

<?php

include_once("Smarty/Smarty.class.php");
$smarty = new Smarty();
$smarty->templates("templates");
$smarty->templates_c("templates_c");
$smarty->cache("cache");
$smarty->cache_lifetime = 0;
$smarty->caching = true;
$smarty->left_delimiter = "{";
$smarty->right_delimiter = "}";
$array[] = array("newsID"=>1, "newsTitle"=>"第1条新闻");
$array[] = array("newsID"=>2, "newsTitle"=>"第2条新闻");
$array[] = array("newsID"=>3, "newsTitle"=>"第3条新闻");
$array[] = array("newsID"=>4, "newsTitle"=>"第4条新闻");
$array[] = array("newsID"=>5, "newsTitle"=>"第5条新闻");
$array[] = array("newsID"=>6, "newsTitle"=>"第6条新闻");
$smarty->assign("newsArray", $array);
//编译并显示位于./templates下的index.tpl模板
$smarty->display("example6.tpl");
?>

运行PHP程序,出现

Fatal error: Uncaught exception 'SmartyException' with message 'Call of unknown function 'templates'.' in C:\AppServ\www\mb\smarty\Smarty.class.php:780 Stack trace: #0 [internal function]: Smarty->__call('templates', Array) #1 C:\AppServ\www\mb\example6.php(13): Smarty->templates('templates') #2 {main} thrown in C:\AppServ\www\mb\smarty\Smarty.class.php on line 780

$smarty->templates("templates");
$smarty->templates_c("templates_c");
$smarty->cache("cache");

$smarty->template_dir = './templates/';
$smarty->compile_dir = './templates_c/';
$smarty->cache_dir = './cache/';

这两种写法都试过了,一个是出错,,另一个是读取不了数据,请各路高手大虾帮帮忙解决一下。。。
展开
 我来答
pzl7758
2010-11-25 · TA获得超过603个赞
知道小有建树答主
回答量:962
采纳率:100%
帮助的人:621万
展开全部
一是设置那三目录用
$smarty->template_dir = './templates/';
$smarty->compile_dir = './templates_c/';
$smarty->cache_dir = './cache/'; 并确保这三目录存在并且路径正确.

二是你模板写法有误
应改为
新闻编号:{$newsID.newsID}<br>
新闻内容:{$newsID.newsTitle}<br><hr>

三开发期间最好别启用SMARTY CACHE 将 $smarty->caching = false;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式