Windows环境下smarty安装简明教程

整个配置过程分为九步走,文章看起来比较长,那是因为站长对每一个步骤都给出了没法再详细的解释,非常浅显,绝对是名副其实的“最简明教程”。按照这个教程,智商大于零的用户都能顺利配置好Smarty!~_~ 本文适用平台: Windows系统+IIS/APACHE+PHP4/PHP5 在开始本文之前,首先得确定你的web服务器和PHP已经配置完毕并工作正常。

1、下载Smarty包 可以从官方站点下载:http://smarty.php.net 目前最新版本是2.6.18

2、解压缩Smarty包并找到合适的位置存放.解压之后文件夹名可能是Smarty.x.x.x,把它修改成smarty(此处只为将来使用方便起见,并非必须),然后将含有Smarty文件的文件夹拷贝到某一个目录下(建议不要放在你的网站目录下,这样别人可以通过路径访问到这些文件,如果非要放在网站目录下,那最好目录的名字起的生僻一些。这些文件即使被别人访问到,也未必造成安全问题,但是一切都为了以防万一)。 在文章的下面内容中,我们都是假设你的文件放在了d:\smarty下。

3、找到你的php.ini配置文件(可以通过运行phpinfo()查看此文件路径,但一般都放在系统目录下)修改php.ini的include_path选项,把smarty的库文件路径加上,比如: include_path = ".;d:\smarty\libs" 提醒一下,php.ini中一共有两处include_path,一处是Unix下使用的,一处是windows下使用的,要修改windows下使用的: Windows: "\path1;\path2" include_path = ".;c:\php4\includes;d:\smarty\libs"

4、重新启动IIS/APACHE,重新启动的目的是使刚才的修改生效。 重新启动的方法很简单,APACHE直接restart即可。对于IIS,可以用net stop iiadmin命令关闭iis,然后用net start w3svc命令启动,就完成了重新启动。如果实在不会重启,就干脆重新启动计算机,这样最省事。

5、在你的网站目录下创建一个文件夹,名字任意,假设叫MySmarty: 然后再在这个MySmarty目录下创建2个文件夹,templates和configs。 创建完成之后如下: (你的网站目录)/MySmarty/templates (这个目录用来存放模版) (你的网站目录)/MySmarty/configs (这个目录用来存放一些配置信息)

6、在MySmarty目录下再创建两个文件夹,名字分别叫:smarty_cache和smarty_templates_c。为什么刚才不一起创建呢?因为这个步骤在原来的官方资料中没有,而我在配置过程中发现,如果没有这两个文件夹,smarty将无法工作,不知道是不是官方资料的smarty版本和目前最新的版本有出入的原因。但是只要配置这两个目录,Smarty便可以顺利工作。因此建议进行配置。

7、这时候你别忘了把我们上面从一开始到现在创建的四个文件夹的权限设置好。当然还包括存放smarty的文件夹d:\smarty的权限,因为有的NTFS格式的系统有严格的权限规定,你的目录创建之后还得有足够的权限才能让web程序访问。一般来说win2000和win2003下采用NTFS分区格式的系统需要做这样的设定,具体方法是在文件夹上点击右键,在“属性”中打开“安全”标签,在里面列出了可以访问这个目录的用户列表,如果没有web访问权限,则需要添加,把Internet来宾帐户和启动IIS进程帐户两个帐户都添加上即可。如果觉得麻烦,可以直接将Everyone用户组添加上,允许任何用户访问。

8、这时候安装工作基本完成,可以进行第一个简单例子的测试: 在你的网站目录下建立 index.php文件,并且在(网站目录)/MySmarty/templates/下建立index.tpl文件,分别输入以下代码 index.php template_dir = '(你的网站目录)/MySmarty/templates';  $smarty->config_dir = '(你的网站目录)/MySmarty/config';  $smarty->cache_dir = (你的网站目录)/MySmarty/smarty_cache';  $smarty->compile_dir = (你的网站目录)/MySmarty/smarty_templates_c'; //上面四行为使用Smarty前的必要参数配置  $smarty->assign('name','学安装Smarty');  $smarty->display('index.tpl'); ?> index.tpl 你好,{ $name}!

9、现在终于可以观看以下自己的杰作了。运行index.php(当然是在你的web服务器上运行,和运行普通php文件完全一样。) http://localhost/index.php 这时候如果看到下面的输出结果,说明你安装成功了~~~是不是很简单呢? 你好,跟17PHP学安装Smarty! 后记:虽然到此为止Smarty的安装已经完成,但是站长还是想给大家一点小建议。在上面的小例子中,可以发现如果我们每次使用Smarty前都需要设置参数,那未免过于麻烦。这时候你可以把smarty信息设置的四行代码包裹在一个类或者一个包含文件当中。这样就不用每次使用前都首先配置信息。

转载于:https://www.cnblogs.com/evernory/archive/2007/08/20/862374.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/381716.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UVA 10891——Game of Sum

题意:给定一个长度为n的序列,两个人分别从两端开始取若干数,但是规定要么左,要么右,问双方都采取最优策略下A的总和减去B的值。 思路:区间dp,dp(i,j)表示先手的总和&…

SQL 分页存储过程(转)

因为邹建的分页存储过程不能返回记录总数,所以每次分页还又要统计一次,所以自己在里面加了个返回记录数,这下就好用了。 iPageCount int OUTPUT --定义输出变量,放在QueryStr上面 .... exec(selectFdShowfromQueryStrFdOrder) --…

[转]javascript小技巧,超强推荐

事件源对象event.srcElement.tagName event.srcElement.type 捕获释放event.srcElement.setCapture(); event.srcElement.releaseCapture(); 事件按键event.keyCode event.shiftKey event.altKey event.ctrlKey 事件返回值event.returnValue 鼠标位置event.x event.y 窗体活动元…

UVA 10453—— Make Palindrome

题意&#xff1a;给定一个字符串&#xff0c;求添加最少的字母使得该串是回文串。 思路&#xff1a;区间dp记忆化搜索。dp[i][j]为区间的最小添加数&#xff0c;那么dp[i][j]min(dp[i1][j],dp[i][j-1])1&#xff1b;相等时则为dp[i1][j-1]; code&#xff1a; #include <bits…

[导入]一再的变故,终于决定何去何从.

dudu文章来源:http://blog.csdn.net/veiny/archive/2007/09/12/1781906.aspx 转载于:https://www.cnblogs.com/veiny/articles/904703.html

UVA 11552——Fewest Flops

题意&#xff1a;给定一个长为s的字符串&#xff08;其中s为k的倍数&#xff09;&#xff0c;然后按照前后分成s/k 组&#xff0c;每组之内可以重排&#xff0c;使得重排后的块数最少&#xff08;一段连续的字母算是一块&#xff09;。 思路&#xff1a;区间dp&#xff0c;dp[i…

中文简体字-繁体字转换 WEB 服务(源代码)

[ C#代码 ]//先需要引用&#xff1a;Microsoft.VisualBasic 这样就能使用VB函数了。using Microsoft.VisualBasic;繁体字转换为简体字 public string toSimplifiedChinese(string sText) { return Microsoft.VisualBasic.Strings.StrConv(sText, VbSt…

uva 10254——The Priest Mathematician

题意&#xff1a;汉诺塔题目的变形&#xff0c;有4根柱子&#xff0c;可以把顶部的k个盘子移到最后的柱子上&#xff0c;然后按照汉诺塔&#xff0c;问最后走的最小步数。 思路&#xff1a;递推&#xff0c;经过递推可以发现f[n] f[k]*2g[n-k]&#xff0c;其中f[n]为4个柱子时…

Resin-IOException: write() forbidden after writer is closed

今天 AMXSA刚刚拿下一个站PCANYWHERE本来打算上传WEBSHELL的&#xff01;谁知道跟我说 resin的机器报告错误&#xff01;晕死&#xff01;测试了所有的JSP-WEBSHELL都不支持 郁闷啊&#xff01;报告了一大堆错误 java.io.IOException: write() forbidden after writer is close…

IMUL、MUL和div的用法

MUL是进行无符号乘法的指令。MUL(无符号乘法)指令有三种格式:第一种是将8位的操作数于al相乘。第二种是将16位的操作数与ax相乘; 第三种是将32位的操作数与eax进行相乘 乘数和被乘数大小必须相同&#xff0c;乘积的尺寸是乘数/被乘数大小的两倍。 三种格式都既接受寄…

jQuery 1.2 带来的兼容问题及对策

jQuery 1.2 中抛弃了不少之前的功能&#xff0c;因此不能向前兼容&#xff0c;而有不少非官方的 jQuery 插件&#xff08;比如 thickbox&#xff09;&#xff0c;使用的是 jQuery 1.2 之前的语法开发的&#xff0c;如果这次还未根据新版本更新的&#xff0c;则可能会出现问题。…

EAX、ECX、EDX、EBX寄存器的作用

一般寄存器:AX、BX、CX、DX AX:累积暂存器&#xff0c;BX:基底暂存器&#xff0c;CX:计数暂存器&#xff0c;DX:资料暂存器 索引暂存器:SI、DI SI:来源索引暂存器&#xff0c;DI:目的索引暂存器 堆叠、基底暂存器:SP、BP SP:堆叠指标暂存器&#xff0c;BP:基底指标暂存器 EA…

简单的Delegate(委托)例子

今天学习一下好久都不愿意碰的Delegate,虽然不是很明白,还是写了一个小例子(参考园子里的朋友们的),希望加深一下印象.朋友们说它类似于C的函数指针,指向一个函数,运行的时候可以调用这个函数.步骤:1. 声明一个delegate对象。2. 实现和delegate具有相同参数和返回值的函数实现&…

汇编语言——第2次上机实验

实验要求&#xff1a; 求表达式x*yz-200的值 实验步骤&#xff1a; 1.按照实验要求&#xff0c;画出相应的计算流程图 可以看到&#xff0c;先算x*y&#xff08;保存在dx&#xff1a;cx&#xff09;&#xff0c;然后扩展z为双字节&#xff08;dx&#xff1a;ax&#xff09;&am…

【第二届】Erlang Fans交流会(补充事宜)

详细参见&#xff1a;http://erlang-china.org/news/erlang-fans-fair.html 这里做些补充&#xff1a; 考虑到上海到珠海坐春秋航空的飞机有特价机票&#xff0c;本次活动的讲师也可报销上海至珠海来回的飞机票&#xff08;要求是春秋航空&#xff09;。 报名&#xff08;普通参…

Codeforce 189B——Counting Rhombi

题意&#xff1a;给定一个矩形的长和宽&#xff0c;求这个矩形里有多少个菱形&#xff08;可重叠&#xff09;。 思路&#xff1a;规律题。小学3年级的练习题&#xff0c;直接找有多少的偶数对角线&#xff08;横纵相乘&#xff09;&#xff0c;两重循环&#xff0c;暴力即可。…

SQL Server 2005 中附加只有mdf文件的数据库(修复置疑的数据库)

在利用VSTS中&#xff0c;VSTS不能创建团队项目&#xff0c;数据库ReportServer出现置疑现象&#xff0c;数据库无法打开。修复过程中&#xff0c;由于想利用SQL SERVER 2000的功能&#xff0c;先备份了ReportServer库文件和日志文件&#xff0c;然后删除数据库。在此之前先进行…

UVA 473——Raucous Rockers

题意&#xff1a;给定n个数&#xff0c;放到m个容器里&#xff0c;每个容器的容量是t&#xff08;n个数的累加和不超过t&#xff09;&#xff0c;在不打乱放的顺序的情况下问最多能放多少个数&#xff1f; 思路&#xff1a;多维dp&#xff0c;f[i][j[k]表示前i个数放到第j个容器…

ZOJ 3932——Handshakes

题意&#xff1a;有n个学生分别进入房间&#xff0c;给出他进房间的时候的与他握手的朋友数v[i],求最多的朋友的个数。 思路&#xff1a;水&#xff0c;从最后一个往前递推&#xff0c;求出当i坐下后他与朋友握手的次数&#xff0c;然后加上他刚进房间时握手的次数即可。 code&…

STL中bitset的用法的整理

构造函数bitset<n> b;b有n位&#xff0c;每位都为0.参数n可以为一个表达式.如bitset<5> b0;则"b0"为"00000";bitset<n> b(unsigned long u);b有n位,并用u赋值;如果u超过n位,则顶端被截除如:bitset<5>b0(5);则"b0"为&quo…