代码之家  ›  专栏  ›  技术社区  ›  Shiv Deepak

如何在PHP中将子目录中的配置文件保存在根目录中时使用它

php
  •  2
  • Shiv Deepak  · 技术社区  · 15 年前

    我正在开发一个web应用程序。内容包括:

    • 根目录(/var/www/)

    索引.php

    • 管理员目录(/var/www/admin)

    管理.php

    我已经包括了配置.php归档到索引.php, 详细信息.php在根目录中使用require\u once('配置.php“),因为此文件包含数据库密码、样式、图像目录路径。。

    我怎样才能在我的管理中包含配置文件/管理.php这样一个配置文件就可以在我的web应用程序的任何地方(甚至在子目录中)使用。这会对你的价值产生影响吗 define('APP_BASE_PATH', dirname(__FILE__));

    如果我在某个地方错了,那么请纠正我。

    3 回复  |  直到 15 年前
        1
  •  1
  •   Pekka    15 年前

    评论澄清后更新: 您正在寻找从项目文件夹结构的任何位置包含中心配置文件的方法。

    @上校,弹片显示了一个方向, DOCUMENT_ROOT . 这是使用嵌套文件夹结构中的“绝对”路径的唯一方法。它有我上面描述的局限性,但其他方面没问题。

    如果你想要最大的可移植性(即运行应用程序的可能性,例如。 www.example.com/myapp/version_1 作为其根目录),您必须使用文件夹结构中的相对引用来“向下爬”到配置文件,例如。 ../../config.php 这也将可靠地工作,虽然有点麻烦,例如,如果你移动一个脚本到另一个文件夹,你必须更新相对路径。

        2
  •  3
  •   Your Common Sense    15 年前

    include $_SERVER['DOCUMENT_ROOT']."/config.php";
    

    在任何地方

    你还有两种可能的方法。

    • 我决定不提它,因为无论如何没有人会使用硬编码的完整路径。

        3
  •  0
  •   Thomas Clayson    15 年前

    您可以每次使用相同的配置文件。。。使用“/”将返回根目录。。。所以在管理方面/管理.php使用此选项:

    require_once("/config.php");

    您可以使用“./”来打开一个目录,例如:

    require_once("../config.php");

    推荐文章