sae使用smarty模板的方法

yipeiwu_com5年前PHP代码库

Smarty是非常流行的模板系统,它分离了业务和逻辑、执行速度快,在php网站中有广泛的运用。

不过在部署到sina app engine(sae)上时出现了问题,因为sae作为云计算平台式无法进行文件读写操作的,所以Smarty中输出的缓存文件就无法实现。

错误信息:“SAE_Fatal_error: Uncaught exception 'SmartyException' with message 'unable to write file ./web/templates_c/wrt4e95555280ef1' ”

SAE给出了解决方案就是使用Memcache。首先进入应用中的应用管理中,在服务管理中开启Memcache一个初始化,

然后修改Smarty的配置文件:

复制代码 代码如下:

// For SAE 编译文件存放在memcache中
$smarty->compile_dir = 'saemc://smartytpl/';
$smarty->cache_dir = 'saemc://smartytpl/';
$smarty->compile_locking = false; // 防止调用touch,saemc会自动更新时间,不需要touch

上面三行是必须的。

这样Smarty模板就可以在SAE上运行了。

相关文章

探寻PHP脚本不报错的原因

那么如果PHP脚本不报语法错,会是什么原因呢: 1. 一般的集成环境,默认会开启错误报告; 但在linux系统中,使用软件包安装的就不一定了,   此时可以查看PHP配置文件,打开错误报...

解析WordPress中控制用户登陆和判断用户登陆的PHP函数

登陆函数:wp_signon() 函数介绍: wp_signon()函数用于授权给用户登陆wordpress并可记住该用户名称。该函数取代了wp_login。WordPress 2.5版...

php设计模式之委托模式

委托模式是软件设计模式中的一项基本技巧。在委托模式中,有两个对象参与处理同一个请求,接受请求的对象将请求委托给另一个对象来处理。委托模式是一项基本技巧,许多其他的模式,如状态模式、策略模...

PHP中explode函数和split函数的区别小结

一、前言 之所以做这个,是因为这两个函数的作用很像,都是把字符串转换成数组。 二、explode 从下面的例子可以看出,生成的数组是有对应的顺序的。 $pizza = "piece1...

PHP防盗链的基本思想 防盗链的设置方法

盗链是指服务提供商自己不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),直接在自己的网站上向最终用户提供其它服务提供商的服务内容,骗取最终用户的浏览和点击率。受益者不...