Как создать класс с «глобальными константами»?
abstract class GlobalConfig{
	const ROOT = "DOCUMENT_ROOT";
	public function root(){
		return $_SERVER[self::ROOT];
	}
}
class A extends GlobalConfig{
	public function ttt(){
		return parent::root();
	}
}

$a = new A();
echo $a->ttt();
Вот тебе! Дальше, делай тоже самое, для remote_addr, http_host,http_referer etc. 
А если серьезно, выше верно написали, почитай больше про ооп, потом пиши) А то ты пытаешься писать процедурно только с использованием классов :)
Нашёл одно интересное решение.
Вы правы - кто говорил, что я фактически не использовал ООП подход, т. к. даже не создавал объекты. Вот, как задача решается с применением синглтона:class Configurator
{
    static private $_instance = NULL;
    private $ROOT;
    
    private function __construct()
    {
        $this->ROOT = $_SERVER['DOCUMENT_ROOT'];
    }
    
    private function __clone()
    {
    }
    
    public static function getInstance()
    {
        if (is_null(self::$_instance)) {
            self::$_instance = new self;
        }
        return self::$_instance;
    }
    
    public final function __get($name)
    {
        return $this->$name;
    }
}
Далее пишем $config = Configurator::getInstance() и получаем нужные значение обычным способом: $config->ROOT.
Изменить значение переменной извне нельзя, так что это именно то, что я хотел, аналог констант в процедурном интерфейсе. И без создания лишних объектов.