可以依赖服务器文档根目录

时间:2013-04-11 09:09:13

标签: php

我差不多9年前为我的网站编写了PHP代码。我有一个名为common.php的配置文件。我网站中的每个页面都需要此页面来访问网站的常量,类和变量。

我在本地计算机上开发,然后将文件上传到实际站点。我在网页上用来调用common.php的代码是:

$main = ($_SERVER['HTTP_HOST'] == 'localhost')? "E:\-=Web=-\-=Sites=-\mysite\main\common.php" :"/home/mysite/public_html/main/common.php";
require_once($main);

这很好用,从来没有给我任何问题。

但是,我想我可以改用:

require_once($_SERVER["DOCUMENT_ROOT"]."/main/common.php")

这会使我的代码更紧凑,这也意味着我不必总是在E://

中拥有我的开发网站文件

所以我的问题是,使用$_SERVER["DOCUMENT_ROOT"]是不错的做法?

如果希望在每个页面上调用配置文件,大多数开发人员会这样做吗?

1 个答案:

答案 0 :(得分:1)

最常见和最可靠的方法是定义一个常量,该常量包含index.php文件中的代码路径,或者包含在同一目录或已知相对路径和引用中的config.php文件。 :

if (!defined('APP_DIR')) define('APP_DIR', __DIR__); // set the app directory to that of the currently executing file

您的其他文件的需求行将成为此

require_once(APP_DIR . '/main/common.php');

现在,您可以保证此常量将包含您期望的内容。假设你做对了,那就是。 ;)