Notice: register_sidebar的调用方法不正确。“边栏1”侧边栏的参数数组中未设置id,缺省为“sidebar-1”。要消除此通知并保持现有的侧边栏内容,请手动将id设置为“sidebar-1”。 请查阅调试WordPress来获取更多信息。 (这个消息是在4.2.0版本添加的。) in /data/htdocs/seven2_blog/wp-includes/functions.php on line 3853
Smarty 中文手册 | Seventwo Blog
Warning: Parameter 1 to wp_default_scripts() expected to be a reference, value given in /data/htdocs/seven2_blog/wp-includes/plugin.php on line 601

Smarty 完全中文手册

2009-02-08 | 分类: PHP

Smarty 中文手册下载地址:

http://www.seven2.com.cn/wp-content/uploads/2009/02/smartye5ae8ce585a8e4b8ade69687e6898be5868c.chm

Smarty是什么?

Smarty是一个php模板引擎。更准确的说,它分开了逻辑程序和外在的内容,提供了一种易于管理的方法。可以描述为应用程序员和美工扮演了不同的角色,因为在大多数情况下 ,他们不可能是同一个人。例如,你正在创建一个用于浏览新闻的网页,新闻标题,标签栏,作者和内容等都是内容要素,他们并不包含应该怎样去呈现。在Smarty的程序里,这些被忽略了。模板设计者们编辑模板,组合使用html标签和模板标签去格式化这些要素的输出(html表格,背景色,字体大小,样式表,等等)。有一天程序员想要改变文章检索的方式(也就是程序逻辑的改变)。这个改变不影响模板设计者,内容仍将准确的输出到模板。同样的,哪天美工吃多了想要完全重做界面,也不会影响到程序逻辑。因此,程序员可以改变逻辑而不需要重新构建模板,模板设计者可以改变模板而不影响到逻辑。

 [ad#amazon_all_sales_600x60]

现在简短的说一下什么是smarty不做的。smarty不尝试将逻辑完全和模板分开。如果逻辑程序严格的用于页面表现,那么它在模板里不会出现问题。有个建议:让应用程序逻辑远离模板, 页面表现逻辑远离应用程序逻辑。这将在以后使内容更容易管理,程序更容易升级。

Smarty的特点之一是”模板编译”。意思是Smarty读取模板文件然后用他们创建php脚本。这些脚本创建以后将被执行。因此并没有花费模板文件的语法解析,同时每个模板可以享受到诸如Zend加速器(http://www.zend.com) 或者PHP加速器(http://www.php-accelerator.co.uk)。这样的php编译器高速缓存解决方案。

Smaty的一些特点:

It is extremely fast.
非常非常的快!

It is efficient since the PHP parser does the dirty work.
用php分析器干这个苦差事是有效的

No template parsing overhead, only compiles once.
不需要多余的模板语法解析,仅仅是编译一次

It is smart about recompiling only the template files that have changed.
仅对修改过的模板文件进行重新编译

You can make custom functions and custom variable modifiers, so the template language is extremely extensible.
可以编辑’自定义函数’和自定义’变量’,因此这种模板语言完全可以扩展

Configurable template delimiter tag syntax, so you can use {}, {{}}, , etc.
可以自行设置模板定界符,所以你可以使用{}, {{}}, , 等等

The if/elseif/else/endif constructs are passed to the PHP parser, so the {if …} expression syntax can be as simple or as complex as you like.
诸如 if/elseif/else/endif 语句可以被传递到php语法解析器,所以 {if …} 表达式是简单的或者是复合的,随你喜欢啦

Unlimited nesting of sections, ifs, etc. allowed.
如果允许的话,section之间可以无限嵌套

It is possible to embed PHP code right in your template files, although this may not be needed (nor recommended) since the engine is so customizable.
引擎是可以定制的.可以内嵌php代码到你的模板文件中,虽然这可能并不需要(不推荐)

Built-in caching support
内建缓存支持

Arbitrary template sources
独立模板文件

Custom cache handling functions
可自定义缓存处理函数

Plugin architecture
插件体系结构


Smarty 完全中文手册的目录:

Table of Contents [内容列表]
Preface [序]
I. Getting Started [开始]
1. What is Smarty? [什么是Smaty?]
2. Installation [安装]
Requirements [安装]
Basic Installation [基本安装]
Extended Setup [扩展设置]
II. Smarty For Template Designers [模板设计者篇]
3. Basic Syntax [基本语法]
Comments [注释]
Functions [函数]
Attributes [属性]
Embedding Vars in Double Quotes [双引号里值的嵌入]
Math [数学运算]
4. Variables [变量]
Variables assigned from PHP [从PHP分配的变量]
Variables loaded from config files [从配置文件读取的变量]
{$smarty} reserved variable [{$smarty}保留变量]
5. Variable Modifiers [变量调节器]
capitalize [首字符大写]
count_characters [字符计数]
cat [连接字符串]
count_paragraphs [计算段数]
count_sentences [计算句数]
count_words [计算词数]
date_format [格式化日期]
default [默认值]
escape [编码]
indent [缩进]
lower [小写]
nl2br [换行符替换成
]
regex_replace [正则替换]
replace [替换]
spacify [插空]
string_format [字符串格式化]
strip [去除(多余空格)]
strip_tags [去除html标签]
truncate [截取]
upper [大写]
wordwrap [行宽约束]
6. Combining Modifiers [组合修改器]
7. Built-in Functions [内建函数]
capture
config_load
foreach,foreachelse
include
include_php
insert
if,elseif,else
ldelim,rdelim
literal
php
section,sectionelse
strip
8. Custom Functions [自定义函数]
assign
counter
cycle
debug
eval
fetch
html_checkboxes
html_image
html_options
html_radios
html_select_date
html_select_time
html_table
math
mailto
popup_init
popup
textformat
9. Config Files [配置文件]
10. Debugging Console [调试控制台]
III. Smarty For Programmers [程序员篇]
11. Constants [常量]
SMARTY_DIR [Smarty目录]
12. Variables [变量]
$template_dir [模板目录变量]
$compile_dir [编译目录变量]
$config_dir [配置目录变量]
$plugins_dir [插件目录变量]
$debugging [调试变量]
$debug_tpl [调试模板]
$debugging_ctrl [调试控制变量]
$global_assign [全局配置变量]
$undefined [未定义变量]
$autoload_filters [自动加载过滤器变量]
$compile_check [编译检查变量]
$force_compile [强迫编译变量]
$caching [缓存变量]
$cache_dir [缓存目录变量]
$cache_lifetime [缓存生存时间变量]
$cache_handler_func [缓存处理函数变量]
$cache_modified_check [缓存修改检查变量]
$config_overwrite [配置覆盖变量]
$config_booleanize [配置布尔化变量]
$config_read_hidden [配置读取隐藏变量]
$config_fix_newlines [配置固定换行符变量]
$default_template_handler_func [默认模板处理函数变量]
$php_handling [php处理变量]
$security [安全变量]
$secure_dir [安全目录变量]
$security_settings [安全配置变量]
$trusted_dir [信任目录变量]
$left_delimiter [左结束符变量]
$right_delimiter [右结束符变量]
$compiler_class [编译类变量]
$request_vars_order [变量顺序变量]
$request_use_auto_globals [自动全局变量]
$compile_id [编译id变量]
$use_sub_dirs [子目录变量]
$default_modifiers [默认修正器变量]
$default_resource_type [默认源类型变量]
13. Methods [方法]
append [添加]
append_by_ref [引用添加]
assign [赋值]
assign_by_ref [引用赋值]
clear_all_assign [清除所有赋值]
clear_all_cache [清除所有缓存]
clear_assign [清除赋值]
clear_cache [清除缓存]
clear_compiled_tpl [清除已编译模板]
clear_config [清除配置]
config_load [加载配置]
display [显示]
fetch [取得输出的内容]
get_config_vars [取配置变量的值]
get_registered_object [取得已注册的对象]
get_template_vars [取得模板变量的值]
is_cached [是否已被缓存]
load_filter [加载过滤器]
register_block [注册一个块]
register_compiler_function [注册编译函数]
register_function [注册函数]
register_modifier [注册修饰器]
register_object [注册对象]
register_outputfilter [注册输出过滤器]
register_postfilter [注册提交过滤器]
register_prefilter [注册预过滤器]
register_resource [注册资源]
trigger_error [触发错误]
template_exists [模板是否存在]
unregister_block [注销一个块]
unregister_compiler_function [注销编译函数]
unregister_function [注销函数]
unregister_modifier [注销修饰器]
unregister_object [注销对象]
unregister_outputfilter [注销输出过滤器]
unregister_postfilter [注销提交过滤器]
unregister_prefilter [注销预过滤器]
unregister_resource [注销资源]
14. Caching [缓存]
Setting Up Caching [建立缓存]
Multiple Caches Per Page [每页多个缓存]
Cache Groups [缓存集合]
Controlling Cacheability of Plugins’ Output [控制插件输出的缓冲能力]
15. Advanced Features [高级特点]
Objects [对象]
Prefilters [预过滤器]
Postfilters [后过滤器]
Output Filters [输出滤镜]
Cache Handler Function [缓冲处理函数]
Resources [资源]
16. Extending Smarty With Plugins [以插件扩展Smarty]
How Plugins Work [插件如何工作]
Naming Conventions [命名约定]
Writing Plugins [编写插件]
Template Functions [模板函数]
Modifiers [修正器]
Block Functions [块函数]
Compiler Functions [编译函数]
Prefilters/Postfilters [预滤器/后滤器]
Output Filters [输出过滤器]
Resources [资源]
Inserts [插入]
IV. Appendixes [附录]
17. Troubleshooting [疑难解答]
Smarty/PHP errors [Smarty/PHP 错误]
18. Tips & Tricks [使用技巧和经验]
Blank Variable Handling [空白变量处理]
Default Variable Handling [默认变量处理]
Passing variable title to header template [传递变量标题给头模板]
Dates [日期]
WAP/WML
Componentized Templates [组合的模板]
Obfuscating E-mail Addresses [拒绝电子邮件地址]
19. Resources [相关资源]
20. BUGS [漏洞]
21. LIST 翻译人员列表

 

[ad#ad336x280img]

标签: