News Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Brandon Savage's Blog:
Keeping Superglobals Out Of Classes
December 08, 2008 @ 07:57:24

In a new post to his blog, Brandon Savage makes a suggestion that could help in maintenance and debugging down the road - keep those superglobals out of your classes.

Let's ignore the security implications of the above code for just a moment, and focus on just the use of the superglobal. By using the $_POST superglobal array, we're effectively doing two things [in the example code]: relying on the field names and limiting code reuse.

He shows how to refactor the example into something a bit more reusable by changing the method call to pass in the given username and password instead of looking to the global for it. He does note, however, that there are some more correct uses for those superglobals:

There are some legitimate uses of superglobals in classes. One example is the use of the $_SESSION superglobal, which is often used for things like a user object. But I urge you to do so sparingly, when appropriate, rather than relying heavily on superglobals which are subject to change and may not give you the data you expect.
0 comments voice your opinion now!
class object oriented superglobal refactor reuse


blog comments powered by Disqus

Similar Posts

Felix Geisendorfer's Blog: A PHP developers guide to JavaScript - Part 1

David Otton's Blog: Neat PHP Tricks: How To Assign References to Globals

Stoyan Stefanov's Blog: Reusing an existing database connection with MDB2

Brandon Savage's Blog: Why Interfaces Rock

Jacob Santos' Blog: My Love For Array Object Idiocy


Community Events

Don't see your event here?
Let us know!


series podcast version install framework laravel5 language introduction library release voicesoftheelephpant laravel opinion php7 api unittest extension community interview example

All content copyright, 2015 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework