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:
Persistant compile identifier. As an alternative to passing the same
$compile_id
to each and every function call, you can set this
$compile_id
and it will be used implicitly thereafter.
With a $compile_id
you can work around the limitation
that you cannot use the same
$compile_dir
for different
$template_dirs
. If you set a distinct
$compile_id
for each
$template_dir
then Smarty can tell the compiled templates apart by their
$compile_id
.
If you have for example a
prefilter
that localizes your templates
(that is: translates language dependend parts) at compile time, then
you could use the current language as $compile_id
and
you will get a set of compiled templates for each language you use.
Another application would be to use the same compile directory across multiple domains / multiple virtual hosts.
Example 13.1. $compile_id in a virtual host environment
<?php $smarty->compile_id = $_SERVER['SERVER_NAME']; $smarty->compile_dir = '/path/to/shared_compile_dir'; ?>