【问题标题】:PHP set_include_pathPHP set_include_path
【发布时间】:2011-11-11 18:46:22
【问题描述】:

我有一个 MainClass.php 文件和同一目录中的其他 .php 文件。我注意到我可以使用以下方法在此文件中包含其他 .php 文件:

require "file.php";

即使我没有指定脚本的完整路径,它似乎也会加载它们。这适用于任何服务器设置吗?还是我必须手动添加完整路径或更改包含路径:

set_include_path(dirname(__FILE__));

在 require 语句之前

?

【问题讨论】:

    标签: php path include require


    【解决方案1】:

    默认情况下,PHP 的包含路径包括.。这代表当前工作目录 (CWD),这就是您的包含工作的原因。

    我认为最好安全地使用它并尽可能使用明确的包含路径或绝对路径,如您的问题所示。

    一种流行的方法是

    set_include_path(implode(PATH_SEPARATOR, array(
        $applicationIncludePath,
        get_include_path()
    ));
    

    【讨论】:

    • 默认情况下?这是否意味着服务器管理员可以更改此设置?
    • @Emm 没错。包含路径不需要包含.,可以配置不带它
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多