Let’s clear the air quickly. I know PHP isn’t the fastest language ever. I know it’s syntactically ugly and doesn’t provide much sugar. I also know it’s one of the most hated languages, but I LOVE IT.
Some of the greatest websites and platforms where written with PHP. Mark Zuckerberg wrote Facebook with PHP. WordPress, which is currently running on over 1 million different domains according to WhatCMS, was originally and still is written in PHP. There’s also frameworks like Laravel, the most starred back-end framework on GitHub, is written in PHP.
Doesn’t that go to show you the popularity of PHP and how it has affected developers, and in some cases everyone?
Enough of the blabbering on. Why do I love PHP? Why should you still be using it in 2019? Here’s why.
PHP works so well with HTML
Something like this is so simple to do with PHP. You can use the alternative syntax for an if statement, put your HTML in and Bob’s your uncle.
For real though, the fact that you can convert any valid HTML file to a PHP file by simply changing the file extension is just so simple.
One thing to watch out for here though is novice programmers. I personally believe that one of the reasons people hate on PHP so much is due to the poor code that is written in these scenarios. When new programmers are learning PHP, they tend to have one huge lump of code before the HTML to prep the server related stuff, then throw it all together inside of the HTML. If you know what you’re doing, you can effectively separate your logic into a separate file and use a view file to do the front-end stuff.
The community is huge.
PHP has been around for a long time. This long life has created an extremely large community of PHP developers, some of which are OG’s and know what PHP really stands for (don’t be a faker and Google it).
This community is so useful. You’re experiencing a problem so you search the Internet for a solution. 9 times out of 10, someone else has had this problem before, found a solution and posted it on StackOverflow or another forum. If you can’t find an answer, ask the question yourself. The community is so big on these forum platforms that you’re bound to get multiple different answers, each giving you a different solution that boils down to the same outcome.
Not only is it good for problem solving and troubleshooting, but the amount of open source libraries, utilities and resources is forever growing. Maybe you don’t want to write a custom server-side router from scratch. Do not fear, as the dozens of repositories on GitHub are here.
Again, be aware of the community. It can get toxic, it can provide misleading information and will, at some point, provide poor code. It’s much like the previous point really.
In the past, before Composer, when you wanted to use someone else’s code you would download the files, place them inside of a lib or vendor directory, manually include them or have to manually add them to your custom autoload functions. This is just a nightmare.
With Composer, it’s a completely different story. You find a cool library, it’s probably on Packagist. Inside of your project, just run a composer require / and you’ve got the files inside of your project. You can manage the versions, update them with a command and it just works. You don’t even have to include each file you want to use. Just require one file in your main file, use PHP’s use keyword to import the class and use it as you wish. How great is that?
As well as this, you don’t need to write tedious __autoload() or spl_register_autoload() functions anymore, because you can define an autoload scheme inside of a single JSON file, run a command and you have an auto loader created for your project.
It’s bliss. It’s beautiful. I love it.
It’s still growing.
To this day, PHP is still getting new features in each release. With PHP 7 we saw extremely impressive performance increases and new versions are being released on a schedule. Soon, we’ll have better support for type hinting (specifically class properties) and will continue to get improved array methods.
I’m interested to know what you think. Leave a comment below, tell me your opinions on PHP. Do you use it? Have you used it? Would you consider learning it?
Also, shameless self plug alert. I have just created a new Twitter account. You can find the link on my profile, or click here. I’ll tweet on there when I upload a new post on here. I’ll probably rant some too.
Thanks for reading ✌️