【发布时间】:2011-02-16 00:26:45
【问题描述】:
当我运行phpinfo() 并查看PHP Core 下的Configuration 类别时,我看到了一个名为include_path 的指令,其中包含一个本地值和一个主值。
在这种情况下,我的本地值设置为
.: 。/包括: ../包括: /usr/share/php: /usr/share/php/smarty: /usr/share/梨我的主值设置为
.: /usr/share/php: /usr/share/梨: /usr/share/php/梨: /usr/share/php/smarty我之所以尝试了解它是如何工作的,是因为我正在处理的系统中有一个名为 Smarty.class.php 的文件,我相信任何使用 Smarty 模板引擎的人都会非常熟悉它。
其中一个 PHP 文件包含以下内容:
require_once("Smarty.class.php"); require_once("user_info_class.inc");文件user_info_class.inc 与生成包含的文件位于同一目录中,这对我来说非常有意义,并且是我一直引用文件的方式。我决定要打开 Smarty.class.php 文件,并假设它在同一个目录中,但事实并非如此。
经过一番挖掘,我发现了那些php_ini变量,终于在usr/share/php/smarty/目录下找到了文件。
因此,似乎在进行包含时,它遵循 include_path 的 Local 和 Master 值之间的某种顺序。
假设到目前为止我的推论是正确的,有人可以解释 PHP 搜索要包含的文件的顺序吗?
【问题讨论】:
标签: php smarty include-path phpinfo php-ini