<HTML ><HEAD ><TITLE >Inserts</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK REL="HOME" TITLE="Smarty Manual" HREF="index.html"><LINK REL="UP" TITLE="Extending Smarty With Plugins" HREF="plugins.html"><LINK REL="PREVIOUS" TITLE="Resources" HREF="plugins.resources.html"><LINK REL="NEXT" TITLE="Appendixes" HREF="appendixes.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=ISO-8859-1"></HEAD ><BODY CLASS="sect1" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >Smarty Manual</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="plugins.resources.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" >Chapter 16. Extending Smarty With Plugins</TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="appendixes.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="sect1" ><H1 CLASS="sect1" ><A NAME="plugins.inserts" ></A >Inserts</H1 ><P > Insert plugins are used to implement functions that are invoked by <A HREF="language.function.insert.html" ><TT CLASS="varname" >{insert}</TT ></A > tags in the template. </P ><DIV CLASS="funcsynopsis" ><A NAME="AEN7477" ></A ><P ></P ><P ><CODE ><CODE CLASS="FUNCDEF" >string <B CLASS="function" >smarty_insert_<TT CLASS="replaceable" ><I >name</I ></TT ></B ></CODE > (array $params, object &$smarty)</CODE ></P ><P ></P ></DIV ><P > The first parameter to the function is an associative array of attributes passed to the insert. </P ><P > The insert function is supposed to return the result which will be substituted in place of the <TT CLASS="varname" >{insert}</TT > tag in the template. </P ><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN7489" ></A ><P ><B >Example 16-11. insert plugin</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br /></span><span style="color: #FF8000">/*<br /> * Smarty plugin<br /> * -------------------------------------------------------------<br /> * File: insert.time.php<br /> * Type: time<br /> * Name: time<br /> * Purpose: Inserts current date/time according to format<br /> * -------------------------------------------------------------<br /> */<br /></span><span style="color: #007700">function </span><span style="color: #0000BB">smarty_insert_time</span><span style="color: #007700">(</span><span style="color: #0000BB">$params</span><span style="color: #007700">, &</span><span style="color: #0000BB">$smarty</span><span style="color: #007700">)<br />{<br /> if (empty(</span><span style="color: #0000BB">$params</span><span style="color: #007700">[</span><span style="color: #DD0000">'format'</span><span style="color: #007700">])) {<br /> </span><span style="color: #0000BB">$smarty</span><span style="color: #007700">-></span><span style="color: #0000BB">trigger_error</span><span style="color: #007700">(</span><span style="color: #DD0000">"insert time: missing 'format' parameter"</span><span style="color: #007700">);<br /> return;<br /> }<br /><br /> </span><span style="color: #0000BB">$datetime </span><span style="color: #007700">= </span><span style="color: #0000BB">strftime</span><span style="color: #007700">(</span><span style="color: #0000BB">$params</span><span style="color: #007700">[</span><span style="color: #DD0000">'format'</span><span style="color: #007700">]);<br /> return </span><span style="color: #0000BB">$datetime</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?></span> </span> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="plugins.resources.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="appendixes.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >Resources</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="plugins.html" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >Appendixes</TD ></TR ></TABLE ></DIV ></BODY ></HTML >