aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/smarty/smarty/docs/programmers/api-variables/variable-use-include-path.md
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/smarty/smarty/docs/programmers/api-variables/variable-use-include-path.md')
-rw-r--r--vendor/smarty/smarty/docs/programmers/api-variables/variable-use-include-path.md49
1 files changed, 49 insertions, 0 deletions
diff --git a/vendor/smarty/smarty/docs/programmers/api-variables/variable-use-include-path.md b/vendor/smarty/smarty/docs/programmers/api-variables/variable-use-include-path.md
new file mode 100644
index 000000000..103a9767d
--- /dev/null
+++ b/vendor/smarty/smarty/docs/programmers/api-variables/variable-use-include-path.md
@@ -0,0 +1,49 @@
+\$use\_include\_path {#variable.use.include.path}
+====================
+
+This tells smarty to respect the
+[include\_path](&url.php-manual;ini.core.php#ini.include-path) within
+the [`File Template Resource`](#resources.file) handler and the plugin
+loader to resolve the directories known to
+[`$template_dir`](#variable.template.dir). The flag also makes the
+plugin loader check the include\_path for
+[`$plugins_dir`](#variable.plugins.dir).
+
+> **Note**
+>
+> You should not design your applications to rely on the include\_path,
+> as this may - depending on your implementation - slow down your system
+> (and Smarty) considerably.
+
+If use\_include\_path is enabled, file discovery for
+[`$template_dir`](#variable.template.dir) and
+[`$plugins_dir`](#variable.plugins.dir) work as follows.
+
+- For each element `$directory` in array (\$template\_dir or
+ \$plugins\_dir) do
+
+- Test if requested file is in `$directory` relative to the [current
+ working directory](&url.php-manual;function.getcwd.php). If file
+ found, return it.
+
+- For each `$path` in include\_path do
+
+- Test if requested file is in `$directory` relative to the `$path`
+ (possibly relative to the [current working
+ directory](&url.php-manual;function.getcwd.php)). If file found,
+ return it.
+
+- Try default\_handler or fail.
+
+This means that whenever a directory/file relative to the current
+working directory is encountered, it is preferred over anything
+potentially accessible through the include\_path.
+
+> **Note**
+>
+> Smarty does not filter elements of the include\_path. That means a
+> \".:\" within your include path will trigger the current working
+> directory lookup twice.
+
+See also [`Template Resources`](#resources) and
+[`$template_dir`](#variable.template.dir)