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.
![JavaScript Promise API]()
While synchronous code is easier to follow and debug, async is generally better for performance and flexibility. Why "hold up the show" when you can trigger numerous requests at once and then handle them when each is ready? Promises are becoming a big part of the JavaScript world...
![CSS Gradients]()
With CSS border-radius, I showed you how CSS can bridge the gap between design and development by adding rounded corners to elements. CSS gradients are another step in that direction. Now that CSS gradients are supported in Internet Explorer 8+, Firefox, Safari, and Chrome...
![PHP / MooTools 1.2 Accordion Helper]()
The MooTools Accordion plugin seems to be the plugin that people seem to have the most problems with. It's an awesome plugin, so I can see why so many people want to use it, but I think that may be part of the problem.
![Image Protection Using PHP, the GD Library, JavaScript, and XHTML]()
Warning: The demo for this post may brick your browser.
A while back I posted a MooTools plugin called dwProtector that aimed to make image theft more difficult -- NOT PREVENT IT COMPLETELY -- but make it more difficult for the rookie to average user...
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.