Tidy up of formatting

This commit is contained in:
pete_morgan
2006-09-27 06:28:21 +00:00
parent 9a5853dba9
commit a970418813
33 changed files with 374 additions and 285 deletions

View File

@@ -22,11 +22,11 @@ $smarty->autoload_filters = array('pre' => array('trim', 'stamp'),
<para> <para>
See also See also
<link linkend="api.register.outputfilter">register_outputfilter()</link>, <link linkend="api.register.outputfilter"><varname>register_outputfilter()</varname></link>,
<link linkend="api.register.prefilter">register_prefilter()</link>, <link linkend="api.register.prefilter"><varname>register_prefilter()</varname></link>,
<link linkend="api.register.postfilter">register_postfilter()</link> <link linkend="api.register.postfilter"><varname>register_postfilter()</varname></link>
and and
<link linkend="api.load.filter">load_filter()</link> <link linkend="api.load.filter"><varname>load_filter()</varname></link>
</para> </para>
</sect1> </sect1>

View File

@@ -5,19 +5,21 @@
<para> <para>
This is the name of the directory where template caches are This is the name of the directory where template caches are
stored. By default this is stored. By default this is
<filename class="directory">"./cache"</filename>, meaning that <filename class="directory">./cache</filename>, meaning that
Smarty will look for the cache directory in the same directory Smarty will look for the <filename class="directory">cache/</filename> directory
as the executing php script. in the same directory as the executing php script.
<emphasis role="bold">This directory must <emphasis role="bold">This directory must
be writeable by the web server</emphasis> be writeable by the web server</emphasis>,
(<link linkend="installing.smarty.basic">see install</link>). <link linkend="installing.smarty.basic">see install</link> for more info.
</para>
<para>
You can also use your own You can also use your own
<link linkend="section.template.cache.handler.func"> <link linkend="section.template.cache.handler.func">
custom cache handler</link> custom cache handler</link>
function to control cache files, which will ignore this function to control cache files, which will ignore this
setting. setting.
See also See also
<link linkend="variable.use.sub.dirs">$use_sub_dirs</link>. <link linkend="variable.use.sub.dirs"><parameter>$use_sub_dirs</parameter></link>.
</para> </para>
<note> <note>
<title>Technical Note</title> <title>Technical Note</title>
@@ -36,13 +38,13 @@
<para> <para>
See also See also
<link linkend="variable.caching">$caching</link>, <link linkend="variable.caching"><parameter>$caching</parameter></link>,
<link linkend="variable.use.sub.dirs">$use_sub_dirs</link>, <link linkend="variable.use.sub.dirs"><parameter>$use_sub_dirs</parameter></link>,
<link linkend="variable.cache.lifetime">$cache_lifetime</link>, <link linkend="variable.cache.lifetime"><parameter>$cache_lifetime</parameter></link>,
<link linkend="variable.cache.handler.func">$cache_handler_func</link>, <link linkend="variable.cache.handler.func"><parameter>$cache_handler_func</parameter></link>,
<link linkend="variable.cache.modified.check">$cache_modified_check</link> <link linkend="variable.cache.modified.check"><parameter>$cache_modified_check</parameter></link>
and and the
<link linkend="caching">Caching section</link>. <link linkend="caching">caching section</link>.
</para> </para>
</sect1> </sect1>

View File

@@ -5,9 +5,9 @@
<para> <para>
You can supply a custom function to handle cache files instead You can supply a custom function to handle cache files instead
of using the built-in method using the of using the built-in method using the
<link linkend="variable.cache.dir">$cache_dir</link>. See the <link linkend="variable.cache.dir"><parameter>$cache_dir</parameter></link>.
custom <link linkend="section.template.cache.handler.func">cache See the custom <link linkend="section.template.cache.handler.func">cache
handler function section</link> for details. handler function section</link> for more details.
</para> </para>
</sect1> </sect1>

View File

@@ -4,31 +4,45 @@
<title>$cache_lifetime</title> <title>$cache_lifetime</title>
<para> <para>
This is the length of time in seconds that a template cache is valid. This is the length of time in seconds that a template cache is valid.
Once this time has expired, the cache will be regenerated. $caching must Once this time has expired, the cache will be regenerated.
be turned on (either 1 or 2) for $cache_lifetime to have any purpose. A </para>
value of -1 will force the cache to never expire. A value of 0 will cause
<itemizedlist>
<listitem><para>
<parameter>$caching</parameter> must be turned on (either 1 or 2) for
<parameter>$cache_lifetime</parameter> to have any purpose.
</para></listitem>
<listitem><para>
A value of -1 will force the cache to never expire.
</para></listitem>
<listitem><para>A value of 0 will cause
the cache to always regenerate (good for testing only, to disable caching the cache to always regenerate (good for testing only, to disable caching
a more efficient method is to set <link a more efficient method is to set <link
linkend="variable.caching">$caching</link> = 0.) linkend="variable.caching"><parameter>$caching</parameter></link> = 0).
</para> </para></listitem>
<listitem><para>
If you want to give certain templates their own cache lifetime, you could
do this by setting <link linkend="variable.caching">
<parameter>$caching</parameter></link> = 2,
then set <parameter>$cache_lifetime</parameter> to a unique value just
before calling <link linkend="api.display"><varname>display()</varname>
</link> or <link linkend="api.fetch"><varname>fetch()</varname></link>.
</para></listitem>
</itemizedlist>
<para> <para>
If <link linkend="variable.force.compile">$force_compile</link> is If <link linkend="variable.force.compile">
<parameter>$force_compile</parameter></link> is
enabled, the cache files will be regenerated every time, effectively enabled, the cache files will be regenerated every time, effectively
disabling caching. You can clear all the cache files with the <link disabling caching. You can clear all the cache files with the <link
linkend="api.clear.all.cache">clear_all_cache()</link> function, or linkend="api.clear.all.cache"><varname>clear_all_cache()</varname></link>
individual cache files (or groups) with the <link function, or individual cache files (or groups) with the <link
linkend="api.clear.cache">clear_cache()</link> function. linkend="api.clear.cache"><varname>clear_cache()</varname></link> function.
</para> </para>
<note>
<title>Technical Note</title>
<para>
If you want to give certain templates their own cache lifetime, you could
do this by setting <link linkend="variable.caching">$caching</link> = 2,
then set $cache_lifetime to a unique value just before calling
<link linkend="api.display">display()</link>
or <link linkend="api.fetch">fetch()</link>.
</para>
</note>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file

View File

@@ -3,22 +3,22 @@
<sect1 id="variable.cache.modified.check"> <sect1 id="variable.cache.modified.check">
<title>$cache_modified_check</title> <title>$cache_modified_check</title>
<para> <para>
If set to true, Smarty will respect the If-Modified-Since If set to &true;, Smarty will respect the If-Modified-Since
header sent from the client. If the cached file timestamp has header sent from the client. If the cached file timestamp has
not changed since the last visit, then a "304 Not Modified" not changed since the last visit, then a <literal>'304: Not Modified'</literal>
header will be sent instead of the content. This works only on header will be sent instead of the content. This works only on
cached content without cached content without
<link linkend="language.function.insert"><command>{insert}</command></link> <link linkend="language.function.insert"><varname>{insert}</varname></link>
tags. tags.
</para> </para>
<para> <para>
See also See also
<link linkend="variable.caching">$caching</link>, <link linkend="variable.caching"><parameter>$caching</parameter></link>,
<link linkend="variable.cache.lifetime">$cache_lifetime</link>, <link linkend="variable.cache.lifetime"><parameter>$cache_lifetime</parameter></link>,
<link linkend="variable.cache.handler.func">$cache_handler_func</link>, <link linkend="variable.cache.handler.func"><parameter>$cache_handler_func</parameter></link>,
and and the
<link linkend="caching">Caching section</link>. <link linkend="caching">caching section</link>.
</para> </para>
</sect1> </sect1>

View File

@@ -4,43 +4,60 @@
<title>$caching</title> <title>$caching</title>
<para> <para>
This tells Smarty whether or not to cache the output of the templates This tells Smarty whether or not to cache the output of the templates
to the <link linkend="variable.cache.dir">$cache_dir</link>. to the <link linkend="variable.cache.dir">
By default this is set to 0, or disabled. If your templates generate <parameter>$cache_dir</parameter></link>.
redundant content, it is advisable to turn on $caching. This By default this is set to 0 ie disabled. If your templates generate
will result in significant performance gains. You can also have redundant content, it is advisable to turn on
<parameter>$caching</parameter>, as this will result in significant
performance gains.
</para>
<para>
You can also have
<link linkend="caching.multiple.caches">multiple</link> <link linkend="caching.multiple.caches">multiple</link>
caches for the same template. A value of 1 or 2 enables caching. 1 tells caches for the same template.
Smarty to use the current </para>
<link linkend="variable.cache.lifetime">$cache_lifetime</link>
variable to determine if the <itemizedlist>
cache has expired. A value of 2 tells Smarty to use the <listitem><para>
<link linkend="variable.cache.lifetime">$cache_lifetime</link> A value of 1 or 2 enables caching.
value at the time the cache was generated. This way you can set the </para></listitem>
<link linkend="variable.cache.lifetime">$cache_lifetime</link>
just before <listitem><para>
<link linkend="api.fetch">fetching</link> A value of 1 tells Smarty to use the current
the template to have granular <link linkend="variable.cache.lifetime"><parameter>$cache_lifetime</parameter></link>
control over when that particular cache expires. variable to determine if the cache has expired.
See also <link linkend="api.is.cached">is_cached()</link>. </para></listitem>
</para> <listitem><para>A value of 2 tells Smarty to use the
<para> <link linkend="variable.cache.lifetime"><parameter>$cache_lifetime</parameter></link>
If <link linkend="variable.compile.check">$compile_check</link> value at the time the cache was generated. This way you can set the
<link linkend="variable.cache.lifetime"> <parameter>$cache_lifetime</parameter></link>
just before <link linkend="api.fetch">fetching</link>
the template to have granular control over when that particular cache expires.
See also <link linkend="api.is.cached"><varname>is_cached()</varname></link>.
</para></listitem>
<listitem><para>
If <link linkend="variable.compile.check"><parameter>$compile_check</parameter></link>
is enabled, the cached content will be regenerated if is enabled, the cached content will be regenerated if
any of the templates or config files that are part of this cache are any of the templates or config files that are part of this cache are
changed. If changed.
<link linkend="variable.force.compile">$force_compile</link> </para></listitem>
is enabled, the cached content will always be <listitem><para>
regenerated. If <link linkend="variable.force.compile">
</para> <parameter>$force_compile</parameter></link> is enabled, the cached
content will always be regenerated.
</para></listitem>
</itemizedlist>
<para> <para>
See also See also
<link linkend="variable.cache.dir">$cache_dir</link>, <link linkend="variable.cache.dir"><parameter>$cache_dir</parameter></link>,
<link linkend="variable.cache.lifetime">$cache_lifetime</link>, <link linkend="variable.cache.lifetime"><parameter>$cache_lifetime</parameter></link>,
<link linkend="variable.cache.handler.func">$cache_handler_func</link>, <link linkend="variable.cache.handler.func"><parameter>$cache_handler_func</parameter></link>,
<link linkend="variable.cache.modified.check">$cache_modified_check</link> <link linkend="variable.cache.modified.check"><parameter>$cache_modified_check</parameter></link>,
and <link linkend="api.is.cached"><varname>is_cached()</varname></link>
<link linkend="caching">Caching section</link>. and the
<link linkend="caching">caching section</link>.
</para> </para>
</sect1> </sect1>
@@ -63,4 +80,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -7,20 +7,23 @@
current template has changed (different time stamp) since the last time current template has changed (different time stamp) since the last time
it was compiled. If it has changed, it recompiles that template. If the it was compiled. If it has changed, it recompiles that template. If the
template has not been compiled, it will compile regardless of this template has not been compiled, it will compile regardless of this
setting. By default this variable is set to true. setting. By default this variable is set to &true;.
</para> </para>
<para>Once an application is <para>Once an application is
put into production (templates won't be changing), the compile_check put into production (ie the templates won't be changing),
step is no longer needed. Be sure to set $compile_check to "false" for the compile check step is no longer needed. Be sure to set
maximal performance. Note that if you change this to "false" and a <parameter>$compile_check</parameter> to &false; for
maximal performance. Note that if you change this to &false; and a
template file is changed, you will *not* see the change since the template file is changed, you will *not* see the change since the
template will not get recompiled. If template will not get recompiled. If
<link linkend="variable.caching">$caching</link> <link linkend="variable.caching"><parameter>$caching</parameter></link>
is enabled and is enabled and <parameter>$compile_check</parameter> is enabled, then
$compile_check is enabled, then the cache files will get regenerated if the cache files will get regenerated if
an involved template file or config file was updated. See <link an involved template file or config file was updated. See <link
linkend="variable.force.compile">$force_compile</link> or <link linkend="variable.force.compile">
linkend="api.clear.compiled.tpl">clear_compiled_tpl()</link>. <parameter>$force_compile</parameter></link> and <link
linkend="api.clear.compiled.tpl"><varname>clear_compiled_tpl()</varname>
</link>.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
@@ -42,4 +45,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -5,16 +5,14 @@
<para> <para>
This is the name of the directory where compiled templates are This is the name of the directory where compiled templates are
located. By default this is located. By default this is
<filename class="directory">"./templates_c"</filename> <filename class="directory">./templates_c</filename>, meaning that Smarty
, meaning that it will look for the <filename class="directory">templates_c/</filename>
will look for the compile directory in the same directory as directory in the same directory as
the executing php script. <emphasis role="bold">This directory must the executing php script. <emphasis role="bold">This directory must
be writeable by the web server</emphasis> be writeable by the web server</emphasis>,
(<link linkend="installing.smarty.basic">see install</link>). <link linkend="installing.smarty.basic">see install</link> for more info.
Also
<link linkend="variable.use.sub.dirs">$use_sub_dirs</link>.
</para> </para>
<note> <note>
<title>Technical Note</title> <title>Technical Note</title>
<para> <para>
@@ -30,9 +28,9 @@
</para> </para>
</note> </note>
<para> <para>
See also <link linkend="variable.compile.id">$compile_id</link> See also <link linkend="variable.compile.id"><parameter>$compile_id</parameter></link>
and and
<link linkend="variable.use.sub.dirs">$use_sub_dirs</link>. <link linkend="variable.use.sub.dirs"><parameter>$use_sub_dirs</parameter></link>.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
@@ -54,4 +52,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -4,29 +4,30 @@
<title>$compile_id</title> <title>$compile_id</title>
<para> <para>
Persistant compile identifier. As an alternative to passing the same Persistant compile identifier. As an alternative to passing the same
$compile_id to each and every function call, you can set this <parameter>$compile_id</parameter> to each and every function call, you can set this
$compile_id and it will be used implicitly thereafter. <parameter>$compile_id</parameter> and it will be used implicitly thereafter.
</para> </para>
<para> <para>
With a $compile_id you can work around the limitation that you cannot With a <parameter>$compile_id</parameter> you can work around the limitation
use the same that you cannot use the same
<link linkend="variable.compile.dir">$compile_dir</link> <link linkend="variable.compile.dir"><parameter>$compile_dir</parameter></link>
for different for different <link linkend="variable.template.dir">
<link linkend="variable.template.dir">$template_dirs</link>. If you set a <parameter>$template_dirs</parameter></link>. If you set a distinct
distinct $compile_id for each <parameter>$compile_id</parameter> for each
<link linkend="variable.template.dir">$template_dir</link> then Smarty can tell the <link linkend="variable.template.dir"><parameter>$template_dir</parameter>
compiled templates apart by their $compile_id. </link> then Smarty can tell the compiled templates apart by their
<parameter>$compile_id</parameter>.
</para> </para>
<para> <para>
If you have for example a If you have for example a
<link linkend="plugins.prefilters.postfilters">prefilter</link> <link linkend="plugins.prefilters.postfilters">prefilter</link>
that localizes your templates that localizes your templates
(that is: translates language dependend parts) at compile time, then (that is: translates language dependend parts) at compile time, then
you should use the current language as $compile_id and you will get a you could use the current language as <parameter>$compile_id</parameter> and
set of compiled templates for each language you use. you will get a set of compiled templates for each language you use.
</para> </para>
<para> <para>
Another example would be to use the same compile directory across Another application would be to use the same compile directory across
multiple domains / multiple virtual hosts. multiple domains / multiple virtual hosts.
</para> </para>
<example> <example>

View File

@@ -3,10 +3,15 @@
<sect1 id="variable.config.booleanize"> <sect1 id="variable.config.booleanize">
<title>$config_booleanize</title> <title>$config_booleanize</title>
<para> <para>
If set to true, config file values of on/true/yes and off/false/no get If set to &true;, <link linkend="config.files">config files</link>
values of <literal>on/true/yes</literal>
and <literal>off/false/no</literal> get
converted to boolean values automatically. This way you can use the converted to boolean values automatically. This way you can use the
values in the template like so: {if #foobar#} ... {/if}. If foobar was values in the template like so:
on, true or yes, the {if} statement will execute. true by default. <literal>{if #foobar#}...{/if}</literal>. If foobar was
<literal>on</literal>, <literal>true</literal> or <literal>yes</literal>,
the <varname>{if}</varname> statement will execute.
Defaults to &true;.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file

View File

@@ -7,9 +7,9 @@
<link linkend="config.files">config files</link> <link linkend="config.files">config files</link>
used in the used in the
templates. Default is templates. Default is
<filename class="directory">"./configs"</filename>, meaning that <filename class="directory">./configs</filename>, meaning that
Smarty will look for the configs directory in the same directory Smarty will look for the <filename class="directory">configs/</filename>
as the executing php script. directory in the same directory as the executing php script.
</para> </para>
<note> <note>
<title>Technical Note</title> <title>Technical Note</title>
@@ -38,4 +38,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -3,8 +3,10 @@
<sect1 id="variable.config.fix.newlines"> <sect1 id="variable.config.fix.newlines">
<title>$config_fix_newlines</title> <title>$config_fix_newlines</title>
<para> <para>
If set to true, mac and dos newlines (\r and \r\n) in config files are If set to &true;, mac and dos newlines ie <literal>'\r'</literal> and
converted to \n when they are parsed. true by default. <literal>'\r\n'</literal> in config files are
converted to <literal>'\n'</literal> when they are parsed.
Default is &true;.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file

View File

@@ -3,7 +3,7 @@
<sect1 id="variable.config.overwrite"> <sect1 id="variable.config.overwrite">
<title>$config_overwrite</title> <title>$config_overwrite</title>
<para> <para>
If set to true (by default), variables read in from If set to &true;, the default then variables read in from
<link linkend="config.files">config files</link> will overwrite each <link linkend="config.files">config files</link> will overwrite each
other. Otherwise, the variables will be pushed onto an array. This is other. Otherwise, the variables will be pushed onto an array. This is
helpful if you want to store arrays of data in config files, just list helpful if you want to store arrays of data in config files, just list
@@ -11,12 +11,12 @@
</para> </para>
<example> <example>
<title>Array of config variables</title> <title>Array of config #variables#</title>
<para> <para>
This examples uses This examples uses
<link linkend="language.function.cycle">{cycle}</link> to <link linkend="language.function.cycle"><varname>{cycle}</varname></link>
output a table with alternating red/green/blue row colors to output a table with alternating red/green/blue row colors
with $config_overwrite = false. with <parameter>$config_overwrite</parameter> = &false;.
</para> </para>
<para>The config file.</para> <para>The config file.</para>
<programlisting> <programlisting>
@@ -28,8 +28,8 @@ rowColors = #0000FF
]]> ]]>
</programlisting> </programlisting>
<para> <para>
The template with a The template with a <link linkend="language.function.section">
<link linkend="language.function.section">{section}</link> loop. <varname>{section}</varname></link> loop.
</para> </para>
<programlisting> <programlisting>
<![CDATA[ <![CDATA[
@@ -45,12 +45,11 @@ rowColors = #0000FF
</example> </example>
<para> <para>
See also See also
<link linkend="language.function.config.load">{config_load}</link>, <link linkend="language.function.config.load"><varname>{config_load}</varname></link>,
<link linkend="config.files">config files</link>, <link linkend="api.get.config.vars"><varname>get_config_vars()</varname></link>,
<link linkend="api.get.config.vars">get_config_vars()</link>, <link linkend="api.clear.config"><varname>clear_config()</varname></link>,
<link linkend="api.clear.config">clear_config()</link> <link linkend="api.config.load"><varname>config_load()</varname></link>
and and the <link linkend="config.files">config files section</link>.
<link linkend="api.config.load">config_load()</link>.
</para> </para>
</sect1> </sect1>

View File

@@ -3,13 +3,12 @@
<sect1 id="variable.config.read.hidden"> <sect1 id="variable.config.read.hidden">
<title>$config_read_hidden</title> <title>$config_read_hidden</title>
<para> <para>
If set to true, hidden sections (section names beginning with a period) If set to &true;, hidden sections ie section names beginning with a .period
in in <link linkend="config.files">config files</link>
<link linkend="config.files">config files</link>
can be read from templates. Typically you would leave can be read from templates. Typically you would leave
this false, that way you can store sensitive data in the config files this &false;, that way you can store sensitive data in the config files
such as database parameters and not worry about the template loading such as database parameters and not worry about the template loading
them. false by default. them. &false; by default.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file

View File

@@ -6,13 +6,13 @@
This is the name of the template file used for the debugging console. By This is the name of the template file used for the debugging console. By
default, it is named <filename>debug.tpl</filename> and is default, it is named <filename>debug.tpl</filename> and is
located in the <link located in the <link
linkend="constant.smarty.dir">SMARTY_DIR</link>. linkend="constant.smarty.dir"><constant>SMARTY_DIR</constant></link>.
</para> </para>
<para> <para>
See also See also
<link linkend="variable.debugging">$debugging</link> <link linkend="variable.debugging"><parameter>$debugging</parameter></link>
and and the
<link linkend="chapter.debugging.console">Debugging console</link> <link linkend="chapter.debugging.console">debugging console</link> section.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file

View File

@@ -3,15 +3,32 @@
<sect1 id="variable.debugging.ctrl"> <sect1 id="variable.debugging.ctrl">
<title>$debugging_ctrl</title> <title>$debugging_ctrl</title>
<para> <para>
This allows alternate ways to enable debugging. NONE means no This allows alternate ways to enable debugging. <literal>NONE</literal>
alternate methods are allowed. URL means when the keyword means no alternate methods are allowed. <literal>URL</literal>
SMARTY_DEBUG is found in the QUERY_STRING, debugging is enabled means when the keyword <literal>SMARTY_DEBUG</literal> is found in the
for that invocation of the script. If <literal>QUERY_STRING</literal>, debugging is enabled for that
<link linkend="variable.debugging">$debugging</link> is true, this invocation of the script. If <link linkend="variable.debugging">
value is ignored. <parameter>$debugging</parameter></link> is &true;, this value is ignored.
</para> </para>
<example>
<title>$debugging_ctrl on localhost</title>
<programlisting role="php">
<![CDATA[
<?php
// shows debug console only on localhost ie
// http://localhost/script.php?foo=bar&SMARTY_DEBUG
$smarty->debugging = false; // the default
$smarty->debugging_ctrl = ($_SERVER['SERVER_NAME'] == 'localhost') ? 'URL' : 'NONE';
?>
]]>
</programlisting>
</example>
<para> <para>
See also <link linkend="chapter.debugging.console">Debugging console</link>. See also <link linkend="chapter.debugging.console">debugging console</link>
section and
<link linkend="variable.debugging"><parameter>$debugging</parameter></link>.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
@@ -33,4 +50,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -10,18 +10,20 @@
templates, variables <link linkend="api.assign">assigned</link> templates, variables <link linkend="api.assign">assigned</link>
from php and from php and
<link linkend="language.config.variables">config file variables</link> <link linkend="language.config.variables">config file variables</link>
for the current template page. It does not show variables for the current script. It does not show variables
assigned within a template with assigned within a template with the
<link linkend="language.function.assign">{assign}</link>. <link linkend="language.function.assign"><varname>{assign}</varname>
</link> function.
</para> </para>
<para>Also see <link linkend="variable.debugging.ctrl">$debugging_ctrl</link> <para>The console can also be enabled from the url with
on how to enable debugging from the url. <link linkend="variable.debugging.ctrl">
<parameter>$debugging_ctrl</parameter></link>.
</para> </para>
<para> <para>
See also See also
<link linkend="language.function.debug">{debug}</link>, <link linkend="language.function.debug"><varname>{debug}</varname></link>,
<link linkend="variable.debug.tpl">$debug_tpl</link>, <link linkend="variable.debug.tpl"><parameter>$debug_tpl</parameter></link>,
and <link linkend="variable.debugging.ctrl">$debugging_ctrl</link> and <link linkend="variable.debugging.ctrl"><parameter>$debugging_ctrl</parameter></link>.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
@@ -43,4 +45,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -5,10 +5,12 @@
<para> <para>
This is an array of modifiers to implicitly apply to every variable in a This is an array of modifiers to implicitly apply to every variable in a
template. For example, to HTML-escape every variable by default, use template. For example, to HTML-escape every variable by default, use
array('escape:"htmlall"'); To make a variable exempt from default <literal>array('escape:"htmlall"')</literal>.
modifiers, pass the special "smarty" modifier with a parameter value of To make a variable exempt from default
"nodefaults" modifier to it, such as modifiers, pass the special <literal>smarty</literal> modifier with a
{$var|smarty:nodefaults}. parameter value of
<literal>nodefaults</literal> modifier to it, such as
<literal>{$var|smarty:nodefaults}</literal>.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file

View File

@@ -4,9 +4,11 @@
<title>$default_resource_type</title> <title>$default_resource_type</title>
<para> <para>
This tells smarty what resource type to use implicitly. The default value This tells smarty what resource type to use implicitly. The default value
is 'file', meaning that $smarty->display('index.tpl'); and is <literal>file</literal>, meaning that
$smarty->display('file:index.tpl'); are identical in meaning. See the <literal>$smarty->display('index.tpl')</literal> and
<link linkend="template.resources">resource</link> chapter for details. <literal>$smarty->display('file:index.tpl')</literal> are identical in
meaning. See the <link linkend="template.resources">resource</link>
chapter for more details.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file

View File

@@ -4,18 +4,18 @@
<title>$error_reporting</title> <title>$error_reporting</title>
<para> <para>
When this value is set to a non-null-value it's value is used as php's When this value is set to a non-null-value it's value is used as php's
<ulink url="&url.php-manual;error_reporting">error_reporting</ulink> <ulink url="&url.php-manual;error_reporting"><varname>error_reporting</varname></ulink>
level inside of <link linkend="api.display">display()</link> level inside of <link linkend="api.display"><varname>display()</varname></link>
and <link linkend="api.fetch">fetch()</link>. When <link and <link linkend="api.fetch"><varname>fetch()</varname></link>. When <link
linkend="chapter.debugging.console">debugging</link> is enabled this value linkend="chapter.debugging.console"><parameter>debugging</parameter></link>
is ignored and the error-level is left untouched. is enabled this value is ignored and the error-level is left untouched.
</para> </para>
<para> <para>
See also See also
<link linkend="api.trigger.error">trigger_error()</link>, <link linkend="api.trigger.error"><varname>trigger_error()</varname></link>,
<link linkend="chapter.debugging.console">debugging</link> <link linkend="chapter.debugging.console">debugging</link>
and and
<link linkend="troubleshooting">Troubleshooting</link>. <link linkend="troubleshooting">troubleshooting</link>.
</para> </para>
</sect1> </sect1>

View File

@@ -5,12 +5,13 @@
<para> <para>
This forces Smarty to (re)compile templates on every This forces Smarty to (re)compile templates on every
invocation. This setting overrides invocation. This setting overrides
<link linkend="variable.compile.check">$compile_check</link>. <link linkend="variable.compile.check">
<parameter>$compile_check</parameter></link>.
By default By default
this is disabled. This is handy for development and this is &false;. This is handy for development and
<link linkend="chapter.debugging.console">debugging</link>. <link linkend="chapter.debugging.console">debugging</link>.
It should never be used in a production environment. If It should never be used in a production environment. If
<link linkend="variable.caching">$caching</link> <link linkend="variable.caching"><parameter>$caching</parameter></link>
is enabled, the cache file(s) will be regenerated every time. is enabled, the cache file(s) will be regenerated every time.
</para> </para>
</sect1> </sect1>

View File

@@ -4,10 +4,10 @@
<title>$left_delimiter</title> <title>$left_delimiter</title>
<para> <para>
This is the left delimiter used by the template language. This is the left delimiter used by the template language.
Default is "{". Default is <literal>{</literal>.
</para> </para>
<para> <para>
See also <link linkend="variable.right.delimiter">$right_delimiter</link> See also <link linkend="variable.right.delimiter"><parameter>$right_delimiter</parameter></link>
and and
<link linkend="language.escaping">escaping smarty parsing</link> <link linkend="language.escaping">escaping smarty parsing</link>
. .

View File

@@ -4,21 +4,33 @@
<title>$php_handling</title> <title>$php_handling</title>
<para> <para>
This tells Smarty how to handle PHP code embedded in the This tells Smarty how to handle PHP code embedded in the
templates. There are four possible settings, default being templates. There are four possible settings, the default being
SMARTY_PHP_PASSTHRU. Note that this does NOT affect php code <constant>SMARTY_PHP_PASSTHRU</constant>. Note that this does NOT affect
within <link linkend="language.function.php">{php}{/php}</link> php code within <link linkend="language.function.php">
tags in the template. <varname>{php}{/php}</varname></link> tags in the template.
</para> </para>
<itemizedlist> <itemizedlist>
<listitem><para>SMARTY_PHP_PASSTHRU - Smarty echos tags as-is.</para></listitem> <listitem><para>
<listitem><para>SMARTY_PHP_QUOTE - Smarty quotes the tags as <constant>SMARTY_PHP_PASSTHRU</constant> - Smarty echos tags as-is.
html entities.</para></listitem> </para></listitem>
<listitem><para>SMARTY_PHP_REMOVE - Smarty removes the tags from
<listitem><para>
<constant>SMARTY_PHP_QUOTE</constant> - Smarty quotes the tags as
html entities.
</para></listitem>
<listitem><para>
<constant>SMARTY_PHP_REMOVE</constant> - Smarty removes the tags from
the templates.</para></listitem> the templates.</para></listitem>
<listitem><para>SMARTY_PHP_ALLOW - Smarty will execute the tags
<listitem><para>
<constant>SMARTY_PHP_ALLOW</constant> - Smarty will execute the tags
as PHP code.</para></listitem> as PHP code.</para></listitem>
</itemizedlist> </itemizedlist>
<note>
<note>
<para> <para>
Embedding PHP code into templates is highly discouraged. Embedding PHP code into templates is highly discouraged.
Use <link linkend="plugins.functions">custom functions</link> or Use <link linkend="plugins.functions">custom functions</link> or

View File

@@ -3,23 +3,25 @@
<sect1 id="variable.plugins.dir"> <sect1 id="variable.plugins.dir">
<title>$plugins_dir</title> <title>$plugins_dir</title>
<para> <para>
This is the directory (or directories) where Smarty will look for the This is the directory or directories where Smarty will look for the
plugins that it needs. Default is plugins that it needs. Default is
<filename class="directory">"plugins"</filename> under the <filename class="directory">plugins/</filename> under the
<link linkend="constant.smarty.dir">SMARTY_DIR</link>. If you <link linkend="constant.smarty.dir"><constant>SMARTY_DIR</constant></link>.
supply a relative path, Smarty will first look under the If you supply a relative path, Smarty will first look under the
<link linkend="constant.smarty.dir">SMARTY_DIR</link>, then <link linkend="constant.smarty.dir"><constant>SMARTY_DIR</constant></link>, then
relative to the cwd (current working directory), then relative to the PHP relative to the current working directory, then relative to the PHP
include_path. If $plugins_dir is an array of directories, Smarty will include_path. If <parameter>$plugins_dir</parameter>
search for your plugin in each plugin directory in the order they are is an array of directories, Smarty will
given. search for your plugin in each plugin directory
<emphasis role="bold">in the order they are given</emphasis>.
</para> </para>
<note> <note>
<title>Technical Note</title> <title>Technical Note</title>
<para> <para>
For best performance, do not setup your $plugins_dir to have to use For best performance, do not setup your <parameter>$plugins_dir</parameter>
the PHP include path. Use an absolute pathname, or a path relative to have to use the PHP include path. Use an absolute pathname,
to SMARTY_DIR or the cwd. or a path relative to <constant>SMARTY_DIR</constant> or the current
working directory.
</para> </para>
</note> </note>
@@ -36,9 +38,8 @@ $smarty->plugins_dir[] = 'includes/my_smarty_plugins';
]]> ]]>
</programlisting> </programlisting>
</example> </example>
<example> <example>
<title>multiple $plugins_dir</title> <title>Multiple $plugins_dir</title>
<programlisting role="php"> <programlisting role="php">
<![CDATA[ <![CDATA[
<?php <?php

View File

@@ -2,16 +2,23 @@
<!-- $Revision$ --> <!-- $Revision$ -->
<sect1 id="variable.request.use.auto.globals"> <sect1 id="variable.request.use.auto.globals">
<title>$request_use_auto_globals</title> <title>$request_use_auto_globals</title>
<para> <para>
Specifies if Smarty should use php's $HTTP_*_VARS[] Specifies if Smarty should use PHP's <literal>$HTTP_*_VARS[]</literal>
($request_use_auto_globals=false) or $_*[] ($request_use_auto_globals=true when &false; or <literal>$_*[]</literal> when
which is the default value). This affects templates that make use of &true; which is the default value. This affects templates that make use of
<link linkend="language.variables.smarty">{$smarty.request.*}, {$smarty.get.*}</link> etc. . <link linkend="language.variables.smarty">
Caution: If you set $request_use_auto_globals to true, <link <literal>{$smarty.request.*}, {$smarty.get.*}</literal></link> etc.
linkend="variable.request.vars.order">$request_vars_order
</link> has no effect but php's configuration value
<literal>gpc_order</literal> is used.
</para> </para>
<note>
<title>Caution</title>
<para>
If you set <literal>$request_use_auto_globals to true</literal>,
<link linkend="variable.request.vars.order">
<parameter>$request_vars_order</parameter></link> has no effect but
PHP's configuration value <literal>gpc_order</literal> is used.
</para>
</note>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:

View File

@@ -7,9 +7,10 @@
variables_order in php.ini variables_order in php.ini
</para> </para>
<para> <para>
See also <link linkend="language.variables.smarty">$smarty.request</link> See also
<link linkend="language.variables.smarty"><parameter>$smarty.request</parameter></link>
and and
<link linkend="variable.request.use.auto.globals">$request_use_auto_globals</link>. <link linkend="variable.request.use.auto.globals"><parameter>$request_use_auto_globals</parameter></link>.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file

View File

@@ -4,10 +4,10 @@
<title>$right_delimiter</title> <title>$right_delimiter</title>
<para> <para>
This is the right delimiter used by the template language. This is the right delimiter used by the template language.
Default is "}". Default is <literal>}</literal>.
</para> </para>
<para> <para>
See also <link linkend="variable.left.delimiter">$left_delimiter</link> See also <link linkend="variable.left.delimiter"><parameter>$left_delimiter</parameter></link>
and and
<link linkend="language.escaping">escaping smarty parsing</link>. <link linkend="language.escaping">escaping smarty parsing</link>.
</para> </para>

View File

@@ -5,13 +5,13 @@
<para> <para>
This is an array of all local files and directories that are considered This is an array of all local files and directories that are considered
secure. secure.
<link linkend="language.function.include">{include}</link> <link linkend="language.function.include"><varname>{include}</varname></link>
and <link linkend="language.function.fetch">{fetch}</link> and <link linkend="language.function.fetch"><varname>{fetch}</varname></link>
use this when use this when
<link linkend="variable.security">$security</link> is enabled. <link linkend="variable.security"><parameter>$security</parameter></link> is enabled.
</para> </para>
<example> <example>
<title>$secure_dir example</title> <title>$secure_dir example</title>
<programlisting role="php"> <programlisting role="php">
@@ -24,11 +24,11 @@ $smarty->secure_dir = $secure_dirs;
]]> ]]>
</programlisting> </programlisting>
</example> </example>
<para> <para>
See also See also
<link linkend="variable.security.settings">Security settings</link>, <link linkend="variable.security.settings"><parameter>$security_settings</parameter></link>
and <link linkend="variable.trusted.dir">$trusted_dir</link>. and <link linkend="variable.trusted.dir"><parameter>$trusted_dir</parameter></link>.
</para> </para>
</sect1> </sect1>

View File

@@ -4,49 +4,49 @@
<title>$security_settings</title> <title>$security_settings</title>
<para> <para>
These are used to override or specify the security settings when These are used to override or specify the security settings when
<link linkend="variable.security">$security</link> is enabled. <link linkend="variable.security"><parameter>$security</parameter></link> is enabled.
These are the possible settings: These are the possible settings:
</para> </para>
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para> <para>
PHP_HANDLING - true/false. If set to true, the <constant>PHP_HANDLING</constant> - boolean. If set to &true;, the
<link linkend="variable.php.handling">$php_handling</link> <link linkend="variable.php.handling"><parameter>$php_handling</parameter></link>
setting is not checked for security. setting is not checked for security.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
IF_FUNCS - This is an array of the names of permitted PHP functions in <constant>IF_FUNCS</constant> - array. The names of permitted PHP functions in
<link linkend="language.function.if">{if}</link> statements. <link linkend="language.function.if"><varname>{if}</varname></link> statements.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
INCLUDE_ANY - true/false. If set to true, any <constant>INCLUDE_ANY</constant> - boolean. If set to &true;, any
template can be included from the file system, regardless of the template can be <link linkend="language.function.include">included</link>
<link linkend="variable.secure.dir">$secure_dir</link> list. from the file system, regardless of the
<link linkend="variable.secure.dir"><parameter>$secure_dir</parameter></link> list.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
PHP_TAGS - true/false. If set to true, <constant>PHP_TAGS</constant> - boolean. If set to &true;,
<link linkend="language.function.php">{php}{/php}</link> <link linkend="language.function.php"><varname>{php}{/php}</varname></link>
tags are permitted in the templates. tags are permitted in the templates.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
MODIFIER_FUNCS - This is an array of the names of permitted <constant>MODIFIER_FUNCS</constant> - array. The names of permitted
PHP functions used as variable modifiers. PHP functions that can be used as variable modifiers.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
ALLOW_CONSTANTS - true/false. If set to true, constants via <constant>ALLOW_CONSTANTS</constant> - boolean. If set to &true;, constants via
<link linkend="language.variables.smarty.const">{$smarty.const.name}</link> <link linkend="language.variables.smarty.const"><parameter>{$smarty.const.FOO}</parameter></link>
are allowed in the templates. The defaults is set to are allowed in the templates.
"false" for security.
</para> </para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>

View File

@@ -3,43 +3,44 @@
<sect1 id="variable.security"> <sect1 id="variable.security">
<title>$security</title> <title>$security</title>
<para> <para>
$security true/false, default is false. Security is good for <parameter>$security</parameter> can be &true; or &false;,
defaults to &false;. Security is good for
situations when you have untrusted parties editing the templates situations when you have untrusted parties editing the templates
(via ftp for example) and you want to reduce the risk of system eg via ftp, and you want to reduce the risk of system
security compromises through the template language. Turning on security compromises through the template language. Turning on
security enforces the following rules to the template language, security enforces the following rules to the template language,
unless specifially overridden with unless specifially overridden with <link linkend="variable.security.settings">
<link linkend="variable.security.settings">$security_settings</link>: <parameter>$security_settings</parameter></link>:
</para> </para>
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para>If <link linkend="variable.php.handling">$php_handling</link> <para>If <link linkend="variable.php.handling"><parameter>$php_handling</parameter></link>
is set to SMARTY_PHP_ALLOW, this is is set to <constant>SMARTY_PHP_ALLOW</constant>, this is
implicitly changed to SMARTY_PHP_PASSTHRU implicitly changed to <constant>SMARTY_PHP_PASSTHRU</constant>
</para></listitem> </para></listitem>
<listitem> <listitem>
<para> <para>
PHP functions are not allowed in <link PHP functions are not allowed in <link
linkend="language.function.if">{if}</link> statements, linkend="language.function.if"><varname>{if}</varname></link> statements,
except those specified in the except those specified in the
<link linkend="variable.security.settings">$security_settings</link> <link linkend="variable.security.settings"><parameter>$security_settings</parameter></link>
</para></listitem> </para></listitem>
<listitem><para> <listitem><para>
templates can only be included from directories Templates can only be included from directories
listed in the listed in the
<link linkend="variable.secure.dir">$secure_dir</link> array <link linkend="variable.secure.dir"><parameter>$secure_dir</parameter></link> array
</para></listitem> </para></listitem>
<listitem><para> <listitem><para>
local files can only be fetched from directories listed in the Local files can only be fetched from directories listed in the
<link linkend="variable.secure.dir">$secure_dir</link> <link linkend="variable.secure.dir"><parameter>$secure_dir</parameter></link>
array using <link linkend="language.function.fetch">{fetch}</link> array using <link linkend="language.function.fetch"><varname>{fetch}</varname></link>
</para></listitem> </para></listitem>
<listitem><para> <listitem><para>
<link linkend="language.function.php">{php}{/php}</link> tags are not allowed <link linkend="language.function.php"><varname>{php}{/php}</varname></link> tags are not allowed
</para></listitem> </para></listitem>
<listitem><para> <listitem><para>
PHP functions are not allowed as modifiers, except those specified in the PHP functions are not allowed as modifiers, except those specified in the
<link linkend="variable.security.settings">$security_settings</link> <link linkend="variable.security.settings"><parameter>$security_settings</parameter></link>
</para></listitem> </para></listitem>
</itemizedlist> </itemizedlist>
</sect1> </sect1>

View File

@@ -6,10 +6,10 @@
This is the name of the default template directory. If you do This is the name of the default template directory. If you do
not supply a resource type when including files, they will be not supply a resource type when including files, they will be
found here. By default this is found here. By default this is
<filename class="directory">"./templates"</filename>, <filename class="directory">./templates</filename>,
meaning that Smarty meaning that Smarty
will look for the will look for the
<filename class="directory">templates</filename> directory in <filename class="directory">templates/</filename> directory in
the same directory as the executing php script. the same directory as the executing php script.
</para> </para>
<note> <note>
@@ -39,4 +39,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -3,12 +3,12 @@
<sect1 id="variable.trusted.dir"> <sect1 id="variable.trusted.dir">
<title>$trusted_dir</title> <title>$trusted_dir</title>
<para> <para>
$trusted_dir is only for use when <parameter>$trusted_dir</parameter> is only for use when
<link linkend="variable.security">$security</link> is enabled. <link linkend="variable.security"><parameter>$security</parameter></link> is enabled.
This is an array of all directories that are considered trusted. This is an array of all directories that are considered trusted.
Trusted directories are where you keep php scripts that are executed Trusted directories are where you keep php scripts that are executed
directly from the templates directly from the templates
with <link linkend="language.function.include.php">{include_php}</link>. with <link linkend="language.function.include.php"><varname>{include_php}</varname></link>.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file

View File

@@ -4,45 +4,48 @@
<title>$use_sub_dirs</title> <title>$use_sub_dirs</title>
<para> <para>
Smarty will create subdirectories under the Smarty will create subdirectories under the
<link linkend="variable.compile.dir">templates_c</link> and <link linkend="variable.compile.dir">compiled templates</link> and
<link linkend="variable.cache.dir">cache</link> <link linkend="variable.cache.dir">cache</link>
directories if $use_sub_dirs is set to true (default is false). directories if <parameter>$use_sub_dirs</parameter> is set to &true;,
default is &false;.
In an environment where there are potentially tens of thousands of files created, In an environment where there are potentially tens of thousands of files created,
this may help the filesystem speed. this may help the filesystem speed.
On the other hand, some environments do not allow PHP processes to On the other hand, some environments do not allow PHP processes to
create directories, so this must be disabled. The default is false (disabled). create directories, so this must be disabled which is the default.
Sub directories are more efficient, so use them if you can.
</para> </para>
<para> <para>
Sub directories are more efficient, so use them if you can.
Theoretically you get much better perfomance on a filesystem with 10 Theoretically you get much better perfomance on a filesystem with 10
directories each having 100 files, than with 1 directory having 1000 directories each having 100 files, than with 1 directory having 1000
files. This was certainly the case with Solaris 7 (UFS)... with newer files. This was certainly the case with Solaris 7 (UFS)... with newer
filesystems such as ext3 and especially reiserfs, the difference is almost filesystems such as ext3 and especially reiserfs, the difference is almost
nothing. nothing.
</para> </para>
<note> <note>
<title>Technical Note</title> <title>Technical Note</title>
<para> <itemizedlist>
$use_sub_dirs=true doesn't work with <listitem>
<ulink url="&url.php-manual;features.safe-mode">safe_mode=On</ulink>, <para><literal>$use_sub_dirs=true</literal> doesn't work with
that's why it's switchable and why it's off by default. <ulink url="&url.php-manual;features.safe-mode">safe_mode=On</ulink>,
</para> that's why it's switchable and why it's off by default.
<para> </para>
$use_sub_dirs=true on Windows can cause problems. </listitem>
</para> <listitem>
<para><literal>$use_sub_dirs=true</literal> on Windows can cause problems.</para>
</listitem>
<listitem>
<para>Safe_mode is being deprecated in PHP6.</para>
</listitem>
</itemizedlist>
</note> </note>
<note>
<title>Note</title>
<para>
Since Smarty-2.6.2 <varname>$use_sub_dirs</varname> defaults to false.
</para>
</note>
<para> <para>
See also See also
<link linkend="variable.compile.dir">$compile_dir</link>, <link linkend="variable.compile.id"><parameter>$compile_id</parameter></link>,
<link linkend="variable.compile.id">$compile_id</link> <link linkend="variable.cache.dir"><parameter>$cache_dir</parameter></link>,
and and
<link linkend="variable.cache.dir">$cache_dir</link>. <link linkend="variable.compile.dir"><parameter>$compile_dir</parameter></link>.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file