$_SERVER jest zmienną superglobalną, druga zmienna natomiast już nie.
Cytat
W PHP 4.1.0 wprowadzone zostały tak zwane tablice superglobalne. Są one tworzone przez PHP - użytkownik nie może samemu tworzyć takich tablic. Zawierają one dane przekazywane do PHP metodami GET, POST, informacje o przekazanych plikach, dane z ciasteczek i sesji - odpowiedno $_GET, $_POST, $_FILES, $_COOKIE, $_SESSION. Mają one zastąpić tablice $HTTP_*_VARS, które ze względu na kompatybilność są jeszcze obecne. Różnica między tablicami superglobalnymi a tymi używanymi wcześniej jest taka, że tablice superglobalne dostępne są w dowolnym miejscu kodu, bez potrzeby użycia instrukcji global.
Użyj $_SERVER dla świętego spokoju.
Innych rozwiązań nie ma sensu się doszukiwać, to jest ok.