Home >Backend Development >PHP Tutorial >怎么我的Smarty不能用

怎么我的Smarty不能用

WBOY
WBOYOriginal
2016-06-23 13:40:27953browse



这个是Smarty.php代码

<?phpdefine("ROOT", str_replace("\\", "/",dirname(__FILE__)).'/');require_once ROOT.'libs/Smarty.class.php';$smarty=new Smarty();$smarty->setTemplateDir(ROOT."tpl");$smarty->setCompileDir(ROOT."plusion/templates_c/");$smarty->setConfigDir(ROOT."plusion/configs/");$smarty->setCacheDir(ROOT."plusion/cache/");$smarty->debugging = false;$smarty->left_delimiter = '<{';$smarty->right_delimiter = '}>';?>

这个是Test.php代码
<?require "smarty.php";$smarty->assign("title" , "smarty模板技术");//编辑器提示BUG未定义的变量$smarty,搞不懂上面require进去了,还怎么报这个错$smarty->assign("content","通过详细的安装使用步骤为你展示smarty模板技术");$smarty->display("test.html");?>

这个是test.html代码;
<html><head><meta http-equiv="Content-type" content="text/html"; charset="utf-8"><title> <{$title}></title> </head> <body> <{$content}> </body> </html>

最后在本地localhost竟然源代码输出,搞不懂


回复讨论(解决方案)

怎么感觉你的Apache和php没有配置对php脚本没有解析呢。
输出一phpinfo()看看你的Wamp环境对不对。

test.php

<?php require "smarty.php";$smarty->assign("title" , "smarty模板技术");//编辑器提示BUG未定义的变量$smarty,搞不懂上面require进去了,还怎么报这个错$smarty->assign("content","通过详细的安装使用步骤为你展示smarty模板技术");$smarty->display("test.html");?>

apache httpd.conf    是否设置 .php呢

APACH 配置正常 只是smarty问题

#1 和 #3 不知道是怎么想的!
楼主截图中分明显示执行的是 test.php
如果是没有配置好 php 支持的话,那只能是产生下载对话框
另外,截图中只显示有第一个 assign 及以后的内容
显然是因为没有开启短标记功能,程序被原样输出了

<?  require "smarty.php";$smarty->
被当做 html 标记,所以不会显示
查看网页源代码时,是都可以看到的

谢谢,确实粗心了

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn