学习 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/';
这两种写法都试过了,一个是出错,,另一个是读取不了数据,请各路高手大虾帮帮忙解决一下。。。 展开
<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/';
这两种写法都试过了,一个是出错,,另一个是读取不了数据,请各路高手大虾帮帮忙解决一下。。。 展开
1个回答
展开全部
一是设置那三目录用
$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;
$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;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询