<table cellspacing="0" cellpadding="0" border="0" width="100%" summary="Header navigation table"><tbody><tr><th align="center" colspan="3">Smarty - the compiling PHPtemplate engine</th> </tr><tr><td valign="bottom" align="left" width="25%"><a accesskey="P" href="api.createdata.html">Prev</a></td> <td valign="bottom" align="center" width="50%">Chapter 13. Smarty Class Methods()</td> <td valign="bottom" align="right" width="25%"><a accesskey="N" href="api.disableSecurity.html">Next</a></td> </tr></tbody></table>
# createTemplate()[建立模板對象]
Name
createTemplate() ― returns a template object 返回一個模板對象
Description
string createTemplate(string template,object parent);
string createTemplate(string template, array data);
string createTemplate(string template, string cache_id, string compile_id, object parent);
string createTemplate(string template, string cache_id, string compile_id, array data);
This creates a template object which later can be rendered by the display or fetch method. It uses the following parameters:
template must be a valid template resource type and path.
cache_id is an optional parameter. You can also set the $cache_id variable once instead of passing this to each call to this function. It is used in the event that you want to cache different content of the same template, such as pages for displaying different products. See also the caching section for more information.
compile_id is an optional parameter. You can also set the $compile_id variable once instead of passing this to each call to this function. It is used in the event that you want to compile different versions of the same template, such as having separate templates compiled for different languages.
parent is an optional parameter. It is an uplink to the main Smarty object, a user-created data object or to another user-created template object. These objects can be chained. The template can access only variables assigned to any of the objects in the parent chain.
data is an optional parameter. It is an associative array containing the name/value pairs of variables which get assigned to the object.
本函數創建一個模板對象,該對象隨后可被[display()](#)或[fetch()](#)渲染。其參數如下:
“template”必須是個有效的模板資源類型和路徑;
“cache_id”是個可選參數,可以預先設置$cache_id變量,這樣就不必每次調用本函數時傳遞具體參數。它在同一模板需要緩存不同內容情況下使用,例如,分頁顯示不同的產品。更多信息參見[緩存](#)章節;
“compile_id”是個可選參數。與“cache_id”一樣,可以預先將參數值分配給$compile_id變量,而不必每次調用本函數時傳遞具體參數。它在同一模板需要編譯不同版情況下使用,例如,將模板分開不同的語言(編碼)編譯時;
“parent”是個可選參數。它負責上行鏈接至主Smarty對象、一個用戶自建數據對象或另一個用戶自建模板對象。這些對象支持鏈式,模板可以訪問賦值給其父鏈對象的變量。
“data”是個可選參數。它是個關聯數組,包含賦值給對象的變量組成的名稱/數值對。
<table class="EXAMPLE" cellspacing="0" cellpadding="0" border="0" width="100%"><tbody><tr><td> <div class="EXAMPLE"><strong><a name="AEN31315" id="AEN31315"/><span class="PROGRAMLISTING">Example 13.15. createTemplate()</span></strong><b><br/></b><table width="100%" bgcolor="#e0e0e0" border="0"><tbody><tr><td> <pre class="PROGRAMLISTING"><?phpinclude('Smarty.class.php');$smarty = new Smarty;// create template object with its private variable scope$tpl = $smarty->createTemplate('index.tpl');// assign variable to template scope$tpl->assign('foo','bar');// display the template$tpl->display();?></pre></td> </tr></tbody></table><p><strong>譯者例:parent參數使用</strong></p> <table width="100%" bgcolor="#e0e0e0" border="0"><tbody><tr><td>test.php:<br/>include_once('../libs/Smarty.class.php');<br/>$smarty = new Smarty;<br/>$smarty->assign('abc','hello!');<br/> $tpl= $smarty->createTemplate('test.html',$smarty); //這里‘parent’為Smarty對象$smarty <br/>$tpl->display(); <br/><br/>test.html:<br/>{$abc}</td> </tr></tbody></table><p> 參見<a href="api.display.html">display()</a>和<a href="api.template.exists.html">templateExists()</a>。</p> </div> </td> </tr></tbody></table>
<table cellspacing="0" cellpadding="0" border="0" width="100%" summary="Footer navigation table"><tbody><tr><td valign="top" align="left" width="33%"><a accesskey="P" href="api.createdata.html">Prev</a></td> <td valign="top" align="center" width="34%"><a accesskey="H" href="index.html">Home</a></td> <td valign="top" align="right" width="33%"><a accesskey="N" href="api.disableSecurity.html">Next</a></td> </tr><tr><td valign="top" align="left" width="33%">createData()<br/> 建立數據</td> <td valign="top" align="center" width="34%"><a accesskey="U" href="api.functions.html">Up</a></td> <td valign="top" align="right" width="33%">disableSecurity()<br/> 關閉安全檢查</td> </tr></tbody></table>
- Smarty模板編譯引擎
- 序
- 譯序
- I.開始
- 第一章. 什么是Smarty?
- 第二章. 安裝
- II.模板設計者篇
- 第三章.基本語法
- 注釋
- 變量
- 函數
- 屬性
- 雙引號里嵌入變量
- 數學運算
- 忽略Smarty解析
- 第四章.變量
- 從PHP分配的變量
- 從配置文件讀取的變量
- 變量范圍
- {$smarty}保留變量
- 第五章.變量調節器
- capitalize
- cat
- count_characters
- count_paragraphs
- count_sentences
- count_words
- date_format
- default
- escape
- indent
- lower
- nl2br
- regex_replace
- replace
- spacify
- string_format
- strip
- strip_tags
- truncate
- upper
- wordwrap
- 第六章.組合修改器
- 第七章.內置函數
- {$var=}
- {append}
- {assign}
- {block}
- {call}
- {capture}
- {config_load}
- {debug}
- {extends}
- {for}
- {foreach},{foreachelse}
- @index
- {function}
- {if},{elseif},{else}
- {include}
- {include_php}
- {insert}
- {ldelim},{rdelim}
- {literal}
- {nocache}
- {php}
- {section},{sectionelse}
- .index
- {while}
- 第八章.自定義函數
- {counter}
- {cycle}
- {eval}
- {fetch}
- {html_checkboxes}
- {html_image}
- {html_options}
- {html_radios}
- {html_select_date}
- {html_select_time}
- {html_table}
- {mailto}
- {math}
- {textformat}
- 第九章.配置文件
- 第十章.調試控制臺
- III.模板程序員篇
- 第十一章 常量
- SMARTY_DIR
- 第十二章 Smarty類變量
- $template_dir
- 第十三章.Smarty類方法
- append()
- appendByRef()
- assign()
- assignByRef()
- clearAllAssign()
- clearAllCache()
- clearAssign()
- clearCache()
- clearCompiledTpl()
- clearConfig()
- compileAllConfig()
- compileAllTemplates()
- configLoad()
- createData()
- createTemplate()
- disableSecurity()
- display()
- enableSecurity()
- fetch()
- getConfigVars()
- getRegisteredObject()
- getTags()
- getTemplateVars()
- isCached()
- loadFilter()
- registerFilter()
- registerPlugin()
- registerObject()
- registerResource()
- templateExists()
- unregisterFilter()
- unregisterPlugin()
- unregisterObject()
- unregisterResource()
- testInstall()
- 第十四章.緩存
- 建立緩存
- 多重緩存
- 緩存集合
- 控制插件輸出的可緩存性
- 第十五章.高級特性
- 安全
- 通過模板更改設置
- 模板繼承
- 數據流
- 對象
- 靜態類
- 預過濾器
- 后過濾器
- 輸出過濾器
- 緩存處理函數
- 資源
- 第十六章.以插件擴展Smarty
- 插件如何工作
- 命名約定
- 編寫插件
- 模板函數
- 調節器
- 塊函數
- 編譯函數
- 預濾器/后濾器
- 輸出過濾器
- 資源
- 插入
- Ⅳ.附錄
- 第十七章.疑難解答
- Smarty/PHP 錯誤
- 第十八章.使用技巧和經驗
- 空白變量處理
- 默認變量處理
- 傳遞變量標題給頭模板
- 日期
- WAP/WML
- 組件化模板
- 拒絕電子郵件地址
- 第十九章. 相關資源
- 第二十章. 漏洞
- 3.0安裝包
- 2.x版本升級至3.x版本的提示
- 3.0.x使用指南
- 翻譯人員列表