小晓陌
哪位大神解答一下,谢谢
qq_诺艳冰华_0
其他引擎也可以啊
renyutao
改成:
$smarty->display('tpl/test.tpl');
貌似改成这样就正常了
慕无忌2585374
https://github.com/smarty-php/smarty/releases/tag/v3.1.33这个是下载smarty下载地址
跪烂键盘无数
语法错误,第一行加个分号试试
四月Time
windos系统文件名不区分大小写,linux系统区分大小写
慕斯9383344
直接重命名改后缀 .tpl 就可以了, 你这个报错就是找不到这个模板文件
慕婉清9277159
这个是notice,不影响实际,只是提醒,可以在你的test.php的那里加上
error_reporting(E_ALL || ~E_NOTICE);就可以了
髢篭
先看看定界符是怎样设置的,再找找定界符的左右位置,是不是有问题
arpmaomao
看不出有什么毛病啊,是不是你的那个引号是中文状态输入的?
夜风雪
前面的smarty.test相当于www.baidu.com,这是老师给本地的localhost指定的别名,并不是smarty/test/test.php这种类似文件夹路径来访问
Eric_peng
可能是smarty文件残缺,你重新下载一下试试
顾明伟
我的也出不来。。。
qq_流年霜满颜_03175064
报错了 文件路径和名字都对
<?php
require('../smarty/Smarty.class.php');
$smarty = new Smarty();
// 配置
$smarty->left_delimiter = "{"; //左定界符
$smarty->right_delimiter = "}"; //右定界符
$smarty->template_dir="tpl"; //设置模板目录
$smarty->compile_dir = "template_c"; //模板编译生成的文件
$smarty->cache_dir = "cache"; //缓存
//以下是开启缓存的另两个配置. 因为通常不用smarty的缓存机制. 所以此项为了解.
//$smarty->caching = true ; //开启缓存
//$smarty->cache_liftime = 120 ; //缓存时间
$smarty->assign('test','文章标题');
$smarty->display('test.tpl');

Fred_d
这个是配置的时候的问题,而且是个Notice,又不是error,不必在意你在实际过程中可以在前面屏蔽掉这些notice和undefined
慕婉清0633280
额,找到问题了,已经解决了。。。
1838149510
$smarty->assig改成$smarty->assign,如果你的apache可以用,为什么不直接localhost进入
GOODHTML
我的引入的文件Smarty.class.php名字写错了,class少写了一个a。 马虎太浪费时间了
慕的地9955338
Unable to load template file 'tpl/test.tpl',模版文件不存在啊。看下你的tpl目录设置对了吗。
慕的地9955338
require_once 'ORG/smarty/Smarty.class.php'; 是不是没成功引入这个主文件啊 要实例化的类就在这个主文件里 如果成功引入了 那就是 test.tpl的位置不对
sunnygirlhh
因为你把模板文件夹的 属性名 写错了。
templates_dir 你少了一个s, 检查下
dy30319
Smarty默认定界符就是{},单独的PHP程序可以不要?> 计算机会把<?php以后的代码都看做PHP程序来执行。在HTML中写PHP时需要?> 这样才能区分HTML代码和PHP代码
Python进行时
默认配置一般都不符合实际需要。还是要单独配置一下
oop_php
也可以直接更改tpl 的文件路径哈
幽壑潜蛟
是啊,最好是保持一致。起码通过类名检索的时候会很方便。别人看你代码的时候经常需要检索
七分
老师用的虚拟主机,虚拟的,就是把localhost换个名字,懂?
七分
因为我们是在test.php里面用$smart->调用模板里面的数据的啊
迷茫兔
使用require_once系统会识别一下文件有没有包含过,如果包含过,则不会包含第二次
qq_孔子飞天_0
在哪引入 就在哪配置
smallelegant