What is Smarty?
Why use it?
Use Cases and Work Flow
Syntax Comparison
Template Inheritance
Best Practices
Crash Course
You may use the Smarty logo according to the trademark notice.
For sponsorship, advertising, news or other inquiries, contact us at:
The {php}
tags allow PHP code to be embedded directly into the template. They
will not be escaped, regardless of the $php_handling
setting. This
is for advanced users only, not normally needed and not recommended.
To access PHP variables in {php}
blocks you will need to use the PHP
global
keyword.
Example 7.28. php code within {php} tags
{php} // including a php script directly from the template. include('/path/to/display_weather.php'); {/php}
Example 7.29. {php} tags with global and assigning a variable
{* this template includes a {php} block that assign's the variable $varX *} {php} global $foo, $bar; if($foo == $bar){ echo 'This will be sent to browser'; } // assign a variable to Smarty $this->assign('varX','Toffee'); {/php} {* output the variable *} <strong>{$varX}</strong> is my fav ice cream :-)
See also
$php_handling
,
{include_php}
,
{include}
,
{insert}
and
componentized templates.