Check for Function and Class Existence Using PHP
When you've inherited a big website or you're working on a group website where you don't have quick access to communicate with the other developers, it's important to not assume that a custom function or class name has not already been defined. Here's how you can protect yourself:
The PHP
if(!function_exists('show_article')) {
function show_article($id) {
//code here
}
}
if(!class_exists('my_class')) {
class myclass {
//code here
}
}
Using this type of programming can also protect you in case a file gets accidentally included twice. If a file with a function definition were to be included twice, you'd get an ugly "redefined" error when the function is realistically only in one file.
![Regular Expressions for the Rest of Us]()
Sooner or later you'll run across a regular expression. With their cryptic syntax, confusing documentation and massive learning curve, most developers settle for copying and pasting them from StackOverflow and hoping they work. But what if you could decode regular expressions and harness their power? In...
![Detect DOM Node Insertions with JavaScript and CSS Animations]()
I work with an awesome cast of developers at Mozilla, and one of them in Daniel Buchner. Daniel's shared with me an awesome strategy for detecting when nodes have been injected into a parent node without using the deprecated DOM Events API.
![jQuery Countdown Plugin]()
You've probably been to sites like RapidShare and MegaUpload that allow you to download files but make you wait a specified number of seconds before giving you the download link. I've created a similar script but my script allows you to animate the CSS font-size...
![Create Classy Inputs Using MooTools’ OverText]()
The MooTools More library is a goldmine. A treasure chest. Pirates booty, if you will (and, of course, I will). More is full of plugins that add a lot of class and functionality to your website with minimal effort.
It seems a little redundant to check for class existence when you’re trying to create a new class. If the class does exist, then you want yours to be named something else so that it can be used. I would personally want an error in the example above, so I knew to rename the class.
It would make sense to check for the class before instantiating it, but to check for the class before creating it, seems like it could create some confusing situations.
Thanks for this cool idea. Sometime it really becomes hard to follow other developers of the team, so this idea will really help.