首先这是一个大概4年前做的PHP项目,使用的是Zend Framework 1 + Smarty 2 , 已经很多年没有动过了,

最近抽风了,把这个项目要玩改版。拿出来改改吧。

ZF 升级2这事,还是再考虑一下。毕竟项目结构要改变。

Smarty由2升级为3还是可以考虑一下。

 

下载最新版Smarty ,主要是为了使用它自带的支持类似于.net MVC 中的layout特性。当然ZF有Layout,但以前就是直接用Smarty,就直接升级吧。

 

遇到的问题。

  • ZF整合的过程中,发现 Smarty2与Smarty 3的代码改动不小,直接使用原来Smarty2与ZF的整合方式不行了。换吧,参考:

http://gediminasm.org/post/smarty-3-extension-for-zend-framework

 

  • 原来在Smarty 2 中如果不赋值,就按空或False来进行处理了。但Smarty3要求已经严格了,只要不赋值就给出警告,为了改动小些,在smarty实例化后,加入一行 $this->_smarty->error_reporting = E_ALL & ~E_NOTICE; 这是一个XX的办法,不值得推荐。就先凑合着吧。

 

  • 如果打算使用 {php}{/php} 这个标签,那就使用 SmartyBC class 吧。

    require_once 'Smarty/SmartyBC.class.php';
            $this->_smarty = new SmartyBC ();

     

  • 2中 如果使用{include file=header.tpl}是没有问题的,在3中就要 加上引号了{include file=’header.tpl’}
  • 2 中 {url a.controller=aaaa a.action=bbbb username=$username}  升级到3 , {$this->url([‘controller’=>’aaaaa’,’action’=>’bbbbb’,’username’=>$username])}

Smarty 由 2.X升级到3.X遇到的问题的更多相关文章

  1. Smarty模板技术学习(二)

    本文主要包括以下内容 公共文件引入与继承 内容捕捉 变量调剂器 缓存 Smarty过滤器 数据对象.注册对象 与已有项目结合 公共文件引入与继承 可以把许多模板页面都用到的公共页面放到单独文件里边,通 ...

  2. 将Ecshop后台fckeditor升级更改为kindeditor 4.1.10编辑器

    ecshop在win8部分电脑上,不管用任何浏览器,都打不开,即使升级到最新版本都不行,问题应该吃在fckeditor兼容上.fckeditor 很久未升级,换掉该编辑器是最佳方法 第一步:下载kin ...

  3. 6月3 Smarty基础读取配置

    Smarty百科 Smarty是一个php模板引擎.更准确的说,它分开了逻辑程序和外在的内容,提供了一种易于管理的方法.可以描述为应用程序员和美工扮演了不同的角色,因为在大多数情况下 ,他们不可能是同 ...

  4. php5 升级 php7 版本遇到的问题处理方法总结

    为了能够更好的提升系统的安全性,把原来的进销存系统源码升级,遇到了一些问题在这儿总结一下: 1.mysql引擎在php7中不在支持会导致以下错误 Uncaught Error: Call to a m ...

  5. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

  6. 看完SQL Server 2014 Q/A答疑集锦:想不升级都难!

    看完SQL Server 2014 Q/A答疑集锦:想不升级都难! 转载自:http://mp.weixin.qq.com/s/5rZCgnMKmJqeC7hbe4CZ_g 本期嘉宾为微软技术中心技术 ...

  7. Entity Framework Core 1.1 升级通告

    原文地址:https://blogs.msdn.microsoft.com/dotnet/2016/11/16/announcing-entity-framework-core-1-1/ 翻译:杨晓东 ...

  8. ASP.NET 5 RC1 升级 ASP.NET Core 1.0 RC2 记录

    升级文档: Migrating from DNX to .NET Core Migrating from ASP.NET 5 RC1 to ASP.NET Core 1.0 RC2 Migrating ...

  9. Smarty的基本使用与总结

    含义: Smarty是PHP的一个引擎模板,可以更好的进行逻辑与显示的分离,即我们常说的MVC,这个引擎的作用就是将C分离出来. 环境需求:PHP5.2或者更高版本 我使用的环境是:PHP5.3,wi ...

随机推荐

  1. 实现:编辑短信,按power键锁屏后,再点亮屏幕,进入的还是编辑短信界面,按返回键才会进入解锁界面。

    描述:在编辑短信界面按电源键锁屏后,重新按电源键点亮屏幕,并没有进入到锁屏界面而是在编辑短信界面,此时短信界面悬浮与锁屏界面之上,这时按返回键关闭编辑短信界面,回到锁屏界面,是如何实现的呢,只需要在需 ...

  2. 黑马程序员——【Java基础】——Java语法基础

    ---------- android培训.java培训.期待与您交流! ---------- 一.关键字 1.定义和特点 定义:被Java语言赋予了特殊含义的单词. 特点:关键字中所有的字母都为小写. ...

  3. 步步入佳境---UI入门(3) --单视图控制器

    视图控制器特点//1,抽象  视觉上没有效果//2,负责控制视图的显示方式//3,负责通知视图的显示内容//4,ios平台赋予的,收到内存警告和检测设备旋转@interface CHViewContr ...

  4. Redis - 介绍及安装

    Redis属于key-value数据库,与传统的数据库存在很大区别,Redis以命令的方式代替了复杂的SQL语句,并且属于内存库性质,所以运行速度非常快.内存数据会生成数据库文件保证数据持久化. Re ...

  5. Java 集合深入理解(15):AbstractMap

    点击查看 Java 集合框架深入理解 系列, - ( ゜- ゜)つロ 乾杯~ 今天来了解下 AbstractMap. 什么是 AbstractMap AbstractMap 是 Map 接口的的实现类 ...

  6. 拆解一个简单的KeyFile保护

    系统 : Windows xp 程序 : abexcrackme3 程序下载地址 :http://pan.baidu.com/s/1mh3TiqO 要求 : 伪造Keyfile 使用工具 :IDA 可 ...

  7. 为什么要urlencode

    为什么要urlencode  1.为了正常获取值  字符 特殊字符的含义 URL编码 & 分隔不同的变量值对 %26 = 用来连接键和值 %3D ? 表示查询字符串的开始 %3F # 用来标志 ...

  8. 在windows下安装GIT

    Git是一个免费的.开源的版本控制软件.在Windows上安装git,一般为msysgit,官方下载地址为:http://code.google.com/p/msysgit/downloads/lis ...

  9. SQL 时间差函数

    SELECT DateDiff(DAY,T.ActualEndDate,GetDate())  FROM JCW_CheckTask T WHERE T.status = 2

  10. 创建XML文档结构

    static void CreateXML(string outputPath) { XmlDocument _xmlDoc = new XmlDocument(); string _xmlNode ...