PHP gets a bad rap. When it first rose to prominence during the dotcom boom of the late 90s, it was an incomplete language that was extremely easy to learn, and that meant there was a lot of bad PHP being written by a lot of bad developers. It has never really shaken that reputation, and jokes about its flaws are manifold. If you say you primarily write PHP at a conference, you’re as likely to get condolences as anything else.
But also, PHP is still dominating the web: it’s huge. Everybody can write it, it powers 80% of the internet, and there’s always jobs around. I’m going to go out on a limb here and say that isn’t antipattern: PHP got big and stayed big for a reason. So, let’s talk about that.
Say you’ve got a particular task that—for whatever bizarre reason—is really, really well suited to C-INTERCAL. Great, you find one of the three developers in the world who can write it and then … they quit. They get a better job offer elsewhere and move on, and suddenly the software they wrote is useless to you: the instant it throws up an error, you may as well throw it out. That’s an extreme example, but the less accessible a language is, the more issues you’re going to have trying to find people who can write it. This is one of the reasons that PHP is still dominating the web- because it’s common, it’s relatively cheap, and that means business owners tend to opt for it over more powerful (but expensive) programming languages, even if they’d be a better choice.
PHP 5 was incomplete, and developers had to backdoor a lot of functionality into it with specialist libraries. Especially to developers migrating from more robust languages like Ruby, PHP 5 seemed like a huge step backwards.
I’m relieved to say that—with the launch of PHP 7—our ugly duckling teenager is finally a man. It has better error handling, it has native 64-bit support, it has better type descriptions and now allows for anonymous classes, and of course it is significantly faster. I think it’ll take a couple more years before people realise exactly how good PHP has become, and a canny developer might look to take advantage of that fact.
Okay, it’s not Node (I don’t know what good deeds we did to deserve NPM, but I’m thankful every day), but the emergence of frameworks like Laravel and Symfony have really helped take PHP to the next level. There’s endless debates about which PHP framework is best, but the fact that there’s debate at all is exciting, and I think signals a new energy and dynamism around a language that wasn’t doing very well as little as three years ago.
PHP introduced OOP with PHP5, and PHP7 continues to make advances with it. Custom classes will allow developers to create custom class names for member dashboards, public profiles, and anything else that the website may have. By creating custom class names, your code becomes more clear and readable, enabling easier reworking in the future. It was initially a little rough (it wasn’t designed as an OOP language from the ground up, so it’s always going to struggle a bit) but I think it has really smoothed out, starting with PHP5.3 and continuing into the present.
PHP supports direct connectivity with over 40 different types of databases. You’ve got the basics like mySQL, but Mongo and PostGre integration are also relatively simple and can give your backend some real versatility and power. Its universal compatibility is a large part of why PHP is still dominating the web.
PHP is the most dominant server-side programming language on the web for a reason. It works for both small scale projects and large commercial scale projects. With so many integrations available, PHP is a programming language that can be used in many ways to create custom web applications. PHP is a great language that provides customizable coding, multi-framework integration and multi-database support. It’s easy to learn, flexible, and has a huge amount of potential. At CodeClouds, we love PHP—our PHP developers are affordable, professional, and happy to do whatever job you need. Contact us for a quote today!
Stay in tune and never miss a post when you subscribe.