Get Smarty

Donate

Paypal

Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

Embedding Vars in Double Quotes

  • Smarty will recognize assigned variables embedded in "double quotes" so long as the variable name contains only numbers, letters, under_scores and brackets[]. See naming for more detail.

  • With any other characters, for example a .period or $object>reference, then the variable must be surrounded by `backticks`.

  • You cannot embed modifiers, they must always be applied outside of quotes.

Example 3.5. Syntax examples


{func var="test $foo test"}       <-- sees $foo
{func var="test $foo_bar test"}   <-- sees $foo_bar
{func var="test $foo[0] test"}    <-- sees $foo[0]
{func var="test $foo[bar] test"}  <-- sees $foo[bar]
{func var="test $foo.bar test"}   <-- sees $foo (not $foo.bar)
{func var="test `$foo.bar` test"} <-- sees $foo.bar
{func var="test `$foo.bar` test"|escape} <-- modifiers outside quotes!

  

Example 3.6. Practical examples


{* will replace $tpl_name with value *}
{include file="subdir/$tpl_name.tpl"}

{* doesn't replace $tpl_name *}
{include file='subdir/$tpl_name.tpl'} <--

{* must have backticks as it contains a . *}
{cycle values="one,two,`$smarty.config.myval`"}

{*  same as $module['contact'].'.tpl' in a php script
{include file="`$module.contact`.tpl"}

{*  same as $module[$view].'.tpl' in a php script
{include file="`$module.$view`.tpl"}

  

See also escape.

Comments
No comments for this page.

Advertisement