Insert plugins are used to implement functions that are invoked by {insert} tags in the template.
插入插件用来执行在模板中被 {insert} 标记调用的函数

string smarty_insert_ name (array $params, object &$smarty)

The first parameter to the function is an associative array of attributes passed to the insert. Either access those values directly, e.g. $params['start'] or use extract($params) to import them into the symbol table.

The insert function is supposed to return the result which will be substituted in place of the {insert} tag in the template.
插入函数将会返回某值,该值将在模板中的 {insert} 标记处被替换。

Example 16-11. insert plugin插入插件

 * Smarty plugin
 * ------------------------------------------------------------- 
 * File: insert.time.php
 * Type: time
 * Name: time
 * Purpose: Inserts current date/time according to format
 * -------------------------------------------------------------
function smarty_insert_time($params, &$smarty)
 if (empty($params['format'])) {
 $smarty->trigger_error("insert time: missing 'format' parameter");

 $datetime = strftime($params['format']);
 return $datetime;