clean two files

This commit is contained in:
didou
2004-03-28 16:48:54 +00:00
parent ffac59cf07
commit a7ec41b3fe
2 changed files with 332 additions and 251 deletions

View File

@@ -26,6 +26,7 @@
<example> <example>
<title>Comments</title> <title>Comments</title>
<programlisting> <programlisting>
<![CDATA[
{* Smarty *} {* Smarty *}
{* include the header file here *} {* include the header file here *}
@@ -36,9 +37,11 @@
{include file=#includeFile#} {include file=#includeFile#}
{* display dropdown lists *} {* display dropdown lists *}
&lt;SELECT name=company&gt; <select name="company">
{html_options values=$vals selected=$selected output=$output} {html_options values=$vals selected=$selected output=$output}
&lt;/SELECT&gt;</programlisting> </select>
]]>
</programlisting>
</example> </example>
</sect1> </sect1>
@@ -99,6 +102,7 @@
<example> <example>
<title>function attribute syntax</title> <title>function attribute syntax</title>
<programlisting> <programlisting>
<![CDATA[
{include file="header.tpl"} {include file="header.tpl"}
{include file=$includeFile} {include file=$includeFile}
@@ -107,10 +111,12 @@
{html_select_date display_days=yes} {html_select_date display_days=yes}
&lt;SELECT name=company&gt; <select name="company">
{html_options values=$vals selected=$selected output=$output} {html_options values=$vals selected=$selected output=$output}
&lt;/SELECT&gt;</programlisting> </select>
</example> ]]>
</programlisting>
</example>
</sect1> </sect1>
<sect1 id="language.syntax.quotes"> <sect1 id="language.syntax.quotes">
<title>Embedding Vars in Double Quotes</title> <title>Embedding Vars in Double Quotes</title>
@@ -123,18 +129,21 @@
<example> <example>
<title>embedded quotes syntax</title> <title>embedded quotes syntax</title>
<programlisting> <programlisting>
<![CDATA[
SYNTAX EXAMPLES: SYNTAX EXAMPLES:
{func var="test $foo test"} &lt;-- sees $foo {func var="test $foo test"} <-- sees $foo
{func var="test $foo_bar test"} &lt;-- sees $foo_bar {func var="test $foo_bar test"} <-- sees $foo_bar
{func var="test $foo[0] test"} &lt;-- sees $foo[0] {func var="test $foo[0] test"} <-- sees $foo[0]
{func var="test $foo[bar] test"} &lt;-- sees $foo[bar] {func var="test $foo[bar] test"} <-- sees $foo[bar]
{func var="test $foo.bar test"} &lt;-- sees $foo (not $foo.bar) {func var="test $foo.bar test"} <-- sees $foo (not $foo.bar)
{func var="test `$foo.bar` test"} &lt;-- sees $foo.bar {func var="test `$foo.bar` test"} <-- sees $foo.bar
PRACTICAL EXAMPLES: PRACTICAL EXAMPLES:
{include file="subdir/$tpl_name.tpl"} &lt;-- will replace $tpl_name with value {include file="subdir/$tpl_name.tpl"} <-- will replace $tpl_name with value
{cycle values="one,two,`$smarty.config.myval`"} &lt;-- must have backticks</programlisting> {cycle values="one,two,`$smarty.config.myval`"} <-- must have backticks
</example> ]]>
</programlisting>
</example>
</sect1> </sect1>
<sect1 id="language.math"> <sect1 id="language.math">
<title>Math</title> <title>Math</title>
@@ -144,20 +153,23 @@ PRACTICAL EXAMPLES:
<example> <example>
<title>math examples</title> <title>math examples</title>
<programlisting> <programlisting>
<![CDATA[
{$foo+1} {$foo+1}
{$foo*$bar} {$foo*$bar}
{* some more complicated examples *} {* some more complicated examples *}
{$foo-&gt;bar-$bar[1]*$baz-&gt;foo-&gt;bar()-3*7} {$foo->bar-$bar[1]*$baz->foo->bar()-3*7}
{if ($foo+$bar.test%$baz*134232+10+$b+10)} {if ($foo+$bar.test%$baz*134232+10+$b+10)}
{$foo|truncate:"`$fooTruncCount/$barTruncFactor-1`"} {$foo|truncate:"`$fooTruncCount/$barTruncFactor-1`"}
{assign var="foo" value="`$foo+$bar`"}</programlisting> {assign var="foo" value="`$foo+$bar`"}
</example> ]]>
</programlisting>
</example>
</sect1> </sect1>
<sect1 id="language.escaping"> <sect1 id="language.escaping">
@@ -174,39 +186,46 @@ PRACTICAL EXAMPLES:
and CSS code into their own files and then using standard HTML methods to access them. and CSS code into their own files and then using standard HTML methods to access them.
</para> </para>
<para>Including literal content is possible using <link linkend="language.function.literal">{literal} .. {/literal}</link> blocks. <para>
Similar to HTML entity usage, you can use <link linkend="language.function.ldelim">{ldelim}</link> and <link linkend="language.function.ldelim">{rdelim}</link> Including literal content is possible using <link
to display the current delimiters. linkend="language.function.literal">{literal} .. {/literal}</link> blocks.
Similar to HTML entity usage, you can use <link
linkend="language.function.ldelim">{ldelim}</link> and <link
linkend="language.function.ldelim">{rdelim}</link> to display the current delimiters.
</para> </para>
<para> <para>
It is often convenient to simply change Smarty's <link linkend="variable.left.delimiter">$left_delimiter</link> and It is often convenient to simply change Smarty's <link
linkend="variable.left.delimiter">$left_delimiter</link> and
<link linkend="variable.right.delimiter">$right_delimiter</link>. <link linkend="variable.right.delimiter">$right_delimiter</link>.
</para> </para>
<example> <example>
<title>changing delimiters example</title> <title>changing delimiters example</title>
<programlisting> <programlisting role="php">
<![CDATA[
<?php
$smarty = new Smarty; $smarty = new Smarty;
$smarty->left_delimiter = '&lt;!--{'; $smarty->left_delimiter = '<!--{';
$smarty->right_delimiter = '}--&gt;'; $smarty->right_delimiter = '}-->';
$smarty->assign('foo', 'bar'); $smarty->assign('foo', 'bar');
$smarty->display('example.tpl'); $smarty->display('example.tpl');
?>
--- example.tpl --- example.tpl
&lt;script language="javascript"&gt; <script language="javascript">
var foo = &lt;!--{$foo}--&gt;; var foo = <!--{$foo}-->;
function dosomething() { function dosomething() {
alert("foo is " + foo); alert("foo is " + foo);
} }
dosomething(); dosomething();
&lt;/script&gt; </script>
]]>
</programlisting> </programlisting>
</example> </example>
</sect1> </sect1>
</chapter> </chapter>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
mode: sgml mode: sgml

View File

@@ -13,11 +13,14 @@
etc. To print a variable, simply enclose it in the delimiters so that it etc. To print a variable, simply enclose it in the delimiters so that it
is the only thing contained between them. Examples: is the only thing contained between them. Examples:
<programlisting> <programlisting>
<![CDATA[
{$Name} {$Name}
{$Contacts[row].Phone} {$Contacts[row].Phone}
&lt;body bgcolor="{#bgcolor#}"&gt;</programlisting> <body bgcolor="{#bgcolor#}">
]]>
</programlisting>
</para> </para>
<sect1 id="language.assigned.variables"> <sect1 id="language.assigned.variables">
@@ -31,17 +34,24 @@
<example> <example>
<title>assigned variables</title> <title>assigned variables</title>
<programlisting> <programlisting>
<![CDATA[
Hello {$firstname}, glad to see you could make it. Hello {$firstname}, glad to see you could make it.
&lt;p&gt; <br />
Your last login was on {$lastLoginDate}. Your last login was on {$lastLoginDate}.
]]>
OUTPUT: </programlisting>
<para>
This will output:
</para>
<screen>
<![CDATA[
Hello Doug, glad to see you could make it. Hello Doug, glad to see you could make it.
&lt;p&gt; <br />
Your last login was on January 11th, 2001.</programlisting> Your last login was on January 11th, 2001.
</example> ]]>
</screen>
</example>
<sect2 id="language.variables.assoc.arrays"> <sect2 id="language.variables.assoc.arrays">
<title>Associative arrays</title> <title>Associative arrays</title>
@@ -50,34 +60,45 @@ Your last login was on January 11th, 2001.</programlisting>
assigned from PHP by specifying the key after the '.' (period) assigned from PHP by specifying the key after the '.' (period)
symbol. symbol.
</para> </para>
<example> <example>
<title>accessing associative array variables</title> <title>accessing associative array variables</title>
<programlisting> <programlisting role="php">
index.php: <![CDATA[
<?php
$smarty = new Smarty; $smarty = new Smarty;
$smarty-&gt;assign('Contacts', $smarty->assign('Contacts',
array('fax' => '555-222-9876', array('fax' => '555-222-9876',
'email' => 'zaphod@slartibartfast.com', 'email' => 'zaphod@slartibartfast.com',
'phone' => array('home' => '555-444-3333', 'phone' => array('home' => '555-444-3333',
'cell' => '555-111-1234'))); 'cell' => '555-111-1234')));
$smarty-&gt;display('index.tpl'); $smarty->display('index.tpl');
?>
index.tpl: ]]>
</programlisting>
{$Contacts.fax}&lt;br&gt; <para>
{$Contacts.email}&lt;br&gt; where the content of index.tpl is:
</para>
<programlisting>
<![CDATA[
{$Contacts.fax}<br />
{$Contacts.email}<br />
{* you can print arrays of arrays as well *} {* you can print arrays of arrays as well *}
{$Contacts.phone.home}&lt;br&gt; {$Contacts.phone.home}<br />
{$Contacts.phone.cell}&lt;br&gt; {$Contacts.phone.cell}<br />
]]>
OUTPUT: </programlisting>
<para>
555-222-9876&lt;br&gt; this will output:
zaphod@slartibartfast.com&lt;br&gt; </para>
555-444-3333&lt;br&gt; <screen>
555-111-1234&lt;br&gt;</programlisting> <![CDATA[
</example> 555-222-9876<br />
zaphod@slartibartfast.com<br />
555-444-3333<br />
555-111-1234<br />
]]>
</screen>
</example>
</sect2> </sect2>
<sect2 id="language.variables.array.indexes"> <sect2 id="language.variables.array.indexes">
<title>Array indexes</title> <title>Array indexes</title>
@@ -85,34 +106,47 @@ zaphod@slartibartfast.com&lt;br&gt;
You can reference arrays by their index, much like native PHP You can reference arrays by their index, much like native PHP
syntax. syntax.
</para> </para>
<example> <example>
<title>accessing arrays by index</title> <title>accessing arrays by index</title>
<programlisting> <programlisting role="php">
index.php: <![CDATA[
<?php
$smarty = new Smarty; $smarty = new Smarty;
$smarty-&gt;assign('Contacts', $smarty->assign('Contacts',
array('555-222-9876', array('555-222-9876',
'zaphod@slartibartfast.com', 'zaphod@slartibartfast.com',
array('555-444-3333', array('555-444-3333',
'555-111-1234'))); '555-111-1234')));
$smarty-&gt;display('index.tpl'); $smarty->display('index.tpl');
index.tpl: ?>
]]>
{$Contacts[0]}&lt;br&gt; </programlisting>
{$Contacts[1]}&lt;br&gt; <para>
where index.tpl is:
</para>
<programlisting>
<![CDATA[
{$Contacts[0]}<br />
{$Contacts[1]}<br />
{* you can print arrays of arrays as well *} {* you can print arrays of arrays as well *}
{$Contacts[2][0]}&lt;br&gt; {$Contacts[2][0]}<br />
{$Contacts[2][1]}&lt;br&gt; {$Contacts[2][1]}<br />
]]>
OUTPUT: </programlisting>
<para>
555-222-9876&lt;br&gt; This will output:
zaphod@slartibartfast.com&lt;br&gt; </para>
555-444-3333&lt;br&gt; <screen>
555-111-1234&lt;br&gt;</programlisting> <![CDATA[
</example> 555-222-9876<br />
zaphod@slartibartfast.com<br />
555-444-3333<br />
555-111-1234<br />
]]>
</screen>
</example>
</sect2> </sect2>
<sect2 id="language.variables.objects"> <sect2 id="language.variables.objects">
<title>Objects</title> <title>Objects</title>
@@ -120,17 +154,24 @@ zaphod@slartibartfast.com&lt;br&gt;
Properties of objects assigned from PHP can be referenced Properties of objects assigned from PHP can be referenced
by specifying the property name after the '-&gt;' symbol. by specifying the property name after the '-&gt;' symbol.
</para> </para>
<example> <example>
<title>accessing object properties</title> <title>accessing object properties</title>
<programlisting> <programlisting>
name: {$person-&gt;name}&lt;br&gt; <![CDATA[
email: {$person-&gt;email}&lt;br&gt; name: {$person-&gt;name}<br />
email: {$person-&gt;email}<br />
OUTPUT: ]]>
</programlisting>
name: Zaphod Beeblebrox&lt;br&gt; <para>
email: zaphod@slartibartfast.com&lt;br&gt;</programlisting> this will output:
</example> </para>
<screen>
<![CDATA[
name: Zaphod Beeblebrox<br />
email: zaphod@slartibartfast.com<br />
]]>
</screen>
</example>
</sect2> </sect2>
</sect1> </sect1>
@@ -144,71 +185,84 @@ email: zaphod@slartibartfast.com&lt;br&gt;</programlisting>
The second syntax is useful for embedding into quoted attribute The second syntax is useful for embedding into quoted attribute
values. values.
</para> </para>
<example> <example>
<title>config variables</title>
<title>config variables</title> <para>
<programlisting> foo.conf:
foo.conf: </para>
<programlisting>
<![CDATA[
pageTitle = "This is mine" pageTitle = "This is mine"
bodyBgColor = "#eeeeee" bodyBgColor = "#eeeeee"
tableBorderSize = "3" tableBorderSize = "3"
tableBgColor = "#bbbbbb" tableBgColor = "#bbbbbb"
rowBgColor = "#cccccc" rowBgColor = "#cccccc"
]]>
index.tpl: </programlisting>
<para>
index.tpl:
</para>
<programlisting>
<![CDATA[
{config_load file="foo.conf"} {config_load file="foo.conf"}
&lt;html&gt; <html>
&lt;title&gt;{#pageTitle#}&lt;/title&gt; <title>{#pageTitle#}</title>
&lt;body bgcolor="{#bodyBgColor#}"&gt; <body bgcolor="{#bodyBgColor#}">
&lt;table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}"&gt; <table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}">
&lt;tr bgcolor="{#rowBgColor#}"&gt; <tr bgcolor="{#rowBgColor#}">
&lt;td&gt;First&lt;/td&gt; <td>First</td>
&lt;td&gt;Last&lt;/td&gt; <td>Last</td>
&lt;td&gt;Address&lt;/td&gt; <td>Address</td>
&lt;/tr&gt; </tr>
&lt;/table&gt; </table>
&lt;/body&gt; </body>
&lt;/html&gt; </html>
]]>
index.tpl: (alternate syntax) </programlisting>
<para>
index.tpl: (alternate syntax)
</para>
<programlisting>
<![CDATA[
{config_load file="foo.conf"} {config_load file="foo.conf"}
&lt;html&gt; <html>
&lt;title&gt;{$smarty.config.pageTitle}&lt;/title&gt; <title>{$smarty.config.pageTitle}</title>
&lt;body bgcolor="{$smarty.config.bodyBgColor}"&gt; <body bgcolor="{$smarty.config.bodyBgColor}">
&lt;table border="{$smarty.config.tableBorderSize}" bgcolor="{$smarty.config.tableBgColor}"&gt; <table border="{$smarty.config.tableBorderSize}" bgcolor="{$smarty.config.tableBgColor}">
&lt;tr bgcolor="{$smarty.config.rowBgColor}"&gt; <tr bgcolor="{$smarty.config.rowBgColor}">
&lt;td&gt;First&lt;/td&gt; <td>First</td>
&lt;td&gt;Last&lt;/td&gt; <td>Last</td>
&lt;td&gt;Address&lt;/td&gt; <td>Address</td>
&lt;/tr&gt; </tr>
&lt;/table&gt; </table>
&lt;/body&gt; </body>
&lt;/html&gt; </html>
]]>
</programlisting>
OUTPUT: (same for both examples) <para>
this will output for both examples:
&lt;html&gt; </para>
&lt;title&gt;This is mine&lt;/title&gt; <screen>
&lt;body bgcolor="#eeeeee"&gt; <![CDATA[
&lt;table border="3" bgcolor="#bbbbbb"&gt; <html>
&lt;tr bgcolor="#cccccc"&gt; <title>This is mine</title>
&lt;td&gt;First&lt;/td&gt; <body bgcolor="#eeeeee">
&lt;td&gt;Last&lt;/td&gt; <table border="3" bgcolor="#bbbbbb">
&lt;td&gt;Address&lt;/td&gt; <tr bgcolor="#cccccc">
&lt;/tr&gt; <td>First</td>
&lt;/table&gt; <td>Last</td>
&lt;/body&gt; <td>Address</td>
&lt;/html&gt;</programlisting> </tr>
</example> </table>
</body>
</html>
]]>
</screen>
</example>
<para> <para>
Config file variables cannot be used until Config file variables cannot be used until
after they are loaded in from a config file. This procedure is after they are loaded in from a config file. This procedure is
explained later in this document under explained later in this document under <command>config_load</command>.
<command>config_load</command>.
</para> </para>
</sect1> </sect1>
@@ -227,9 +281,9 @@ OUTPUT: (same for both examples)
in the examples below: in the examples below:
</para> </para>
<example> <example>
<title>displaying request variables</title> <title>displaying request variables</title>
<programlisting> <programlisting>
<![CDATA[
{* display value of page from URL (GET) http://www.domain.com/index.php?page=foo *} {* display value of page from URL (GET) http://www.domain.com/index.php?page=foo *}
{$smarty.get.page} {$smarty.get.page}
@@ -249,14 +303,17 @@ OUTPUT: (same for both examples)
{$smarty.session.id} {$smarty.session.id}
{* display the variable "username" from merged get/post/cookies/server/env *} {* display the variable "username" from merged get/post/cookies/server/env *}
{$smarty.request.username}</programlisting> {$smarty.request.username}
</example> ]]>
</programlisting>
</example>
<note>
<para> <para>
Note: For historical reasons {$SCRIPT_NAME} can be accessed For historical reasons {$SCRIPT_NAME} can be accessed
directly though {$smarty.server.SCRIPT_NAME} is the directly though {$smarty.server.SCRIPT_NAME} is the
proposed way to access this value. proposed way to access this value.
</para> </para>
</note>
</sect2> </sect2>
<sect2 id="language.variables.smarty.now"> <sect2 id="language.variables.smarty.now">
@@ -267,25 +324,29 @@ OUTPUT: (same for both examples)
Epoch (January 1, 1970) and can be passed directly to Epoch (January 1, 1970) and can be passed directly to
date_format modifier for display purposes. date_format modifier for display purposes.
</para> </para>
<example> <example>
<title>using {$smarty.now}</title>
<title>using {$smarty.now}</title> <programlisting>
<programlisting> <![CDATA[
{* use the date_format modifier to show current date and time *} {* use the date_format modifier to show current date and time *}
{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}</programlisting> {$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}
</example> ]]>
</programlisting>
</example>
</sect2> </sect2>
<sect2 id="language.variables.smarty.const"> <sect2 id="language.variables.smarty.const">
<title>{$smarty.const}</title> <title>{$smarty.const}</title>
<para> <para>
You can access PHP constant values directly. You can access PHP constant values directly.
</para> </para>
<example> <example>
<title>using {$smarty.const}</title>
<title>using {$smarty.const}</title> <programlisting>
<programlisting> <![CDATA[
{$smarty.const._MY_CONST_VAL}</programlisting> {$smarty.const._MY_CONST_VAL}
</example> ]]>
</programlisting>
</example>
</sect2> </sect2>
<sect2 id="language.variables.smarty.capture"> <sect2 id="language.variables.smarty.capture">
@@ -332,6 +393,7 @@ OUTPUT: (same for both examples)
</sect1> </sect1>
</chapter> </chapter>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
mode: sgml mode: sgml