Is it prefered to use $_SERVER['DOCUMENT_ROOT'] in the website?

491 Views Asked by At

Do you think it is preferred to use $_SERVER['DOCUMENT_ROOT'] in website's include statements? Is it supported everywhere without any problem?

2

There are 2 best solutions below

1
On BEST ANSWER

Many frameworks use dirname(__FILE__) to work out the application path based on a known file, usually the index.php

In the Zend Framework, they use the following to define the application path, which is then used everywhere in the app:

define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application');
0
On

I personally prefer relative paths: include("../../some/other/path.php") Whenever I create a directory, I know exactly how my directory tree is setup, and it doesn't matter whether there is a document root or anything else available.

Furthermore, there are some cases where $_SERVER['DOCUMENT_ROOT'] may not work (eg, I have seen people have issues with it on IIS).