getenv() & register_globals

Ms

Новичок
getenv() & register_globals

Итак, в связи с тем, что я прочитал всё-таки литературу, которая сомгла меня убедить в том, что надо переходить на
register_globals=Off
Пришлось вносить некоторые изменения в сайт, который раньше работал при register_globals=On.
В ходе этоо выяснилось, что $DOCUMENT_ROOT, например не превращается в $GLOBALS['DOCUMENT_ROOT'], а превращается в $_SERVER['DOCUMENT_ROOT']. И так, практически со всеми глобальными переменными, которыми я когда-либо пользовался.
Вопросы:
1) Что является более универсальным решением задачи (в качестве совмещения со всеми хостингами и др.):
print $_SERVER['DOCUMENT_ROOT'] или
print $HTTP_SERVER_VARS['DOCUMENT_ROOT']
print getenv('DOCUMENT_ROOT'
)?

Если $_SERVER['DOCUMENT_ROOT'], тогда зачем вообще нужна функция getenv()?

2) Что является более быстрым решением задачи:
print $_SERVER['DOCUMENT_ROOT'] или
print $HTTP_SERVER_VARS['DOCUMENT_ROOT']
print getenv('DOCUMENT_ROOT'

Скорее всего, разница в сорости невелика, но, например, DOCUMENT_ROOT я использую на всех страницах своего сайта, когда include'om вставляю меню, и не хотелось бы, чтобы что-то тормозило процесс выдачи пользователю информации.

3) Массив $HTTP_SERVER_VARS лучше/хуже чем $_SERVER?
 

SiMM

Новичок
Re: getenv() & register_globals

Автор оригинала: Ms
Если $_SERVER['DOCUMENT_ROOT'], тогда зачем вообще нужна функция getenv()?
Подозреваю, что для консоли.
2) Глупости
3) $_SERVER суперглобален, в отличии от $HTTP_SERVER_VARS
 

Ms

Новичок
$_SERVER суперглобален, в отличии от $HTTP_SERVER_VARS
Из этого можно сделать вывод, что $HTTP_SERVER_VARS - абсолютно бестолковый массив.

Что именно?
Если, разницы во времени нет асолютно никакой, то что именно лучше использовать?
 

SiMM

Новичок
Автор оригинала: Ms
Из этого можно сделать вывод, что $HTTP_SERVER_VARS - абсолютно бестолковый массив.
Из этого можно сделать вывод, что нужно читать мануал, дабы понять происхождение этого массива.
Сам вопрос.
Если, разницы во времени нет асолютно никакой, то что именно лучше использовать?
Какая разница, какая разница во времени? У тебя весь скрипт только и занимается, что дёргает эти переменные? ИМХО, удобнее $_SERVER.
 

Макс

Старожил PHPClub
Из этого можно сделать вывод, что $HTTP_SERVER_VARS - абсолютно бестолковый массив.
Ms, $_SERVER появился сравнительно поздно (в 4.1.0 кажется). До этого был только HTTP_SERVER_VARS
 
Сверху