在公共根目录之外放置配置文件时。我如何在不定义路径的情况下在每个页面上调用它

Sar*_* B. 6 php filestructure

这就是我的文件结构。[..] 是文件夹

[public]
[libs]
[crontab]
[logs]
[sessions]
[tmp]

config.php
Run Code Online (Sandbox Code Playgroud)

该域被设置为公用文件夹作为其根。包括 config.php 文件在内的所有其他内容都在根目录之外。配置包含数据库连接信息和其他必要的设置。

公共文件夹中的每个页面我都必须放置整个路径,以便包含配置文件。问题是当我将所有内容从本地机器移动到公共服务器时,我必须浏览每个页面并更改包含在配置文件中的路径。有没有更好的办法?也许在 php.ini 或类似的东西中设置路径?

谢谢

mar*_*rio 4

在这种特定情况下,您可以使用:

include("$_SERVER[DOCUMENT_ROOT]/../config.php");
# Note: special exception array syntax within double quotes.
Run Code Online (Sandbox Code Playgroud)

它首先解析到public目录,但后移一级../以到达文档根目录之外的配置文件。


但您也可以SetEnv在您的场合使用.htaccess定义另一个环境变量。$_SERVER