smarty2 php,Smarty2至Smarty3升级指南.

Smarty2和Smarty3在告终上差不多,然而在smarty2升级到smarty3的时候还是要当心些许不同。

下面是已知的和smarty2不接受的地方

== 语法 ==

Smarty 3 API有些方面举行了更新。一些Smarty 2 API调用必需更新以便相称Smarty

3。你可能会获得提醒,评比你利用新的语法。能够察看Smarty 3附带的 README 文件获得更多消息。

{$array|@mod}

语法总是让人迷惑,加上@符号解释修饰符作用于数组而不是作用于数组的每个元素。等闲你总是想让这个修饰符作用于这个变量而无须琢磨它的种类。在

Smarty 3中,{$array|mod} 和 {$smary|@mod}

是雷同的。去掉@符号,修饰符依旧作用于数组。万一你想修饰符作用于数据元素,你定然在模板中循环数组,可能利用自定义修饰符以扶持数组遍历。

大多smrty函数曾经在必需的地方例如{html_options}举行了转义。

== PHP版本 ==

Smarty 3 仅扶持PHP 5. 在PHP 4将不能正常工作。

== {php} 符号 ==

Smarty 3 默认关闭 {php}

符号扶持,不评比利用。你能够穿越设置$smarty->allow_php_tag=true来启用。

{php} 块中的变量不再与统一页中的其它{php}块分享作用域,因而在利用的时候要当心。

== 定界符和空格 ==

Smarty 定界符 {} 有空格包围是不再感受是Smarty符号。因而,{ foo } 将被Smarty疏忽,然而 {foo}

将被分辨。这个改变使得 Javascript/CSS更轻率在smarty中利用,而未曾必需利用 {literal}.

这个个性能够穿越设置 $smarty->auto_literal = false; 禁用。

== 未用引号的字符串 ==

Smarty 2 对于参数中未用引号括起来的字符串有点开恩(并且模棱两可)。Smarty 3

比拟严厉。对于不包括特异字符(A-Za-z0-9_之外的字符)的字符串依旧能够无须引号括起来。

例如下面例子中文件名就定然用引号括起来。

{assign var=foo value=baz}

== 伸展Smarty类 ==

Smarty 3 顺从PHP5规范构造法定。伸展Smarty类的时候yu.yuanem.com,利用 __construct()

作为类的构造函数的名目。万一你告终自己的构造函数,定然要先调用 parent::__construct()

class MySmarty extends Smarty { function __construct() { parent::__construct(); // your initialization code goes here }}

== 积极加载器 ==

Smarty 用spl_autoload_register函数

告终了它自己的积极加载器。万一想在自己的利用中利用积极加载器www.hirain.cn,1,就定然利用此措施登记。

利用 __autoload() 将失利。 这是PHP5规范积极加载函数。能够察看

http://us3.php.net/manual/en/function.spl-autoload-register.php

== 插件文件名 ==

自从Smarty 3利用默认的spl积极加载器,即将求插件文件名利用小写字母。Smarty 2

批准利用大小写混杂插件名,你定然重命名以用于smarty 3.

== Smarty特异变量作用域 ==

在Smarty 2中Smarty特异变量 $smarty.section.* and $smarty.foreach.*

具有大局作用域。万一子模板中含有同名的循环,就会遮蔽父模板中的值。

在Smarty 3中这些特异变量将只作用于定义循环所在的模板。若是必需在子模板中利用,就不得不利用参数递交。

{include file="path/foo.tpl" index=$smarty.section.foo.index}

== SMARTY_RESOURCE_CHAR_SET ==

Smarty 3 设置常量 SMARTY_RESOURCE_CHAR_SET 为 utf-8作为模?**募哪献址?

只是作为像 escape 等函数的默认字符集. 万一你的模板利用其它字符集, 就定然自己定义这个常量.

== trigger_error()

API 函数 trigger_error() 已被移除。

== Smarty 常量 ==

下面这些常量

SMARTY_PHP_PASSTHRU

SMARTY_PHP_QUOTE

SMARTY_PHP_REMOVE

SMARTY_PHP_ALLOW

已被类常量轮换

Smarty::PHP_PASSTHRU

Smarty::PHP_QUOTE

Smarty::PHP_REMOVE

Smarty::PHP_ALLOW

String s = new String ("Text here");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值