Yikes.
That was a sad thread. Globals and registering variables are two different things.
Some languages such as Java require that all variables be inside of classes. No choice and it works well.
Other languages such as C++ do allow stand alone global variables. As a general rule, globals are frowned upon. Globals have their place but it's usually better to wrap them up in classes in C++.
Php has some object oriented features but is not a object oriented language per se. I still like to minimize globals but they are more common in php. And there is really nothing wrong with that. It's just the way php was designed.