This is an exciting time to be a developer. There are new technologies emerging every month, moving the web in new directions.
With all these new languages, tools and frameworks coming out, the “old” technologies seem to fade in the background.
So a common question is:
Is PHP outdated? PHP has been around for 24 years and still is used extensively today. More than 80% of all websites on the internet use PHP, and big companies like Yahoo, Wikipedia, and Facebook use PHP. WordPress is built on PHP and It is still is the most popular blog platform today. So no, PHP is definitely not outdated.
In this article we will go into detail on what PHP is. The history, the current situation and the future of PHP.
The Web Platform
We can divide the “web” platform into 2 major categories – front-end and back-end.
- Front-end: Front-end is responsible for giving the web its look. It’s where all of our actions “seem” to happen. For example, whenever you’re visiting your Facebook chat or watching a YouTube video, you’re interacting with the front face of the underlying service.
Think of “front-end” as a bridge between the real workers (back-end) and the users.
- Back-end: It’s the place where almost all the critical tasks happen. In fact, all the interactions you do with the internet is actually with the “back-end”. The “front-end” part only presents the visualization for the back-end.
The back-end is the real part where everything happens. There are a number of available languages and frameworks for this part. For example, PHP, SQL, Python, Ruby, Java, .NET, Perl, Scala, Node.js etc. are only a few of the most popular back-end ingredients.
What is PHP?
PHP is an important part of the “back-end” of the entire WWW (World Wide Web). In fact, you can thank PHP for providing us such a great internet!
PHP (“Hypertext Preprocessor”, original name “Personal Home Page”) is a major programming language for the web platform. Since its debut back in 1994 by Rasmus Lerdorf, PHP has been dominating the internet.
PHP is a server-side, interpreted scripting language. It’s free software released under the PHP License. The standard PHP interpreter powered by Zend Engine is also under the PHP license. Thanks to the free-of-charge characteristic, PHP is available for any web server using any operating system and platform.
History of PHP
At the starting, PHP was a personal tool of Rasmus Lerdorf for managing his personal homepage. Back then, it was able to communicate with databases and work with web forms. It was the year 1994.
Over time, PHP has matured a ton. Now, it can perform the most complicated web tasks without breaking a sweat! Over the lifetime of 25+ years, PHP has got a number of revisions.
- PHP 3 – Released in 1998 (no longer maintained)
The original PHP version was rewritten by Zeev Suraski and Andi Gutmans. This iteration got the current name – PHP (Hypertext Preprocessor).
- PHP 4 – Released in 2000 (no longer maintained)
- PHP 5 – Released in 2004
This iteration came up with the newly released Zend Engine II. PHP 5 improved the support for powerful programming features like object-oriented programming, the PDO (PHP Data Objects) extension, and numerous performance improvements. In 2008, it became the only stable version of PHP under active maintenance.
Official support for PHP 5 (PHP 5.6, to be exact) ended on 31 December 2018. However, Debian 8.0 Jessie will extend the support till June 2020.
- PHP 6
Over time, Unicode has become the universal encoding for all the languages of all over the world. However, PHP, at that time, was lacking this feature. This is where the development of PHP 6 came. It was supposed to provide support for PHP.
It was meant to be a big leap for PHP. However, several complexions arose that created issues with the release. For example, it was decided to use UTF-16 internally on PHP. The Unicode (UTF-8) support was still in the early ages.
For solving all the issues, only a few people understood the task. As PHP is an open-source project, it depends on the interested developers to improve the program. However, at that time, not enough developer was interested in it.
That’s why we didn’t ever get a PHP 6.
- PHP 7
PHP 7 is the current standard of PHP (on the time of writing this article). The development of this major version took place between 2014 and 2015. The naming started a debate in the community as PHP 6 was never out.
PHP 7 is a major improvement in SPEED! The hard work of the developers really paid off. The PHP codebase was changed in order to reduce the usage of memory and increasing performance.
PHP 7 also supports the Scalar types – int, float, string, and bool. It offers more correct and self-documenting PHP programs. By default, the Scalar type-declarations are non-strict, meaning it will try to change itself from original data type to another. Now, the strict mode is available as a whole. You can also enable the mode file by file basis.
PHP 7 comes up with a better error handling. There are also a few additional operators. Take a look at the spaceship operator ( < = > ) for example.
$compare = 2 <=> 1 // 2 < 1 ? return -1 // 2 = 1 ? return 0 // 2 > 1 ? return 1
The major update also presents the opportunity for other improvements beyond requiring backward-compatibility. With such drastic changes, the reworked Zend Engine is called Zend Engine 3.
The latest version of PHP 7 (PHP 7.3) is still under active maintenance. The official support for PHP 7.3 will end in December 2021.
PHP usage scenario
PHP comes up with tons of flexibility and features for the web platform. According to the PHP official website, the benefits of PHP boil down to the following points.
- Server-side scripting
This is the most traditional and by default, the main target of PHP. For making things into work, there are 3 parts that must function together – the PHP parser (CGI or server module), a web server and a web browser (the user).
The output of a PHP program is, by default, an HTML code that the viewer sees on the browser. However, that’s not the only thing PHP is capable of. It holds the power of outputting the code into various other formats, for example, images, PDF and even Flash movies!
Let’s have a look at a sample PHP code.
<!DOCTYPE html> <html> <body> <?php echo "<h2>PHP is Fun!</h2>"; echo "Hello world!<br>"; echo "I'm about to learn PHP!<br>"; echo "This ", "string ", "was ", "made ", "with multiple parameters."; ?> </body> </html>
The output of the above PHP code results into the following HTML code –
<html><head></head><body> <h2>PHP is Fun!</h2>Hello world!<br>I'm about to learn PHP!<br>This string was made with multiple parameters. </body></html>
You can tell the PHP processor to auto-generate XHTML and other XML files as a server-side cache. This can reduce the necessity of re-rendering the web pages several times, thus, improving performance.
- Command line scripting
There are a number of available command-line scripting solutions for every single platform – Windows, Linux, macOS and others.
PHP, itself is a quite powerful interpreted language that allows you to do even command-line scripting!
It’s an unorthodox usage of PHP. However, with profound knowledge, it’s very doable. All you need is the PHP parser configured in the system. The workflow goes something like this – you write your code to tell the PHP parser to do a certain set of tasks, the parser executes the code with the help of the system (other services, protocols etc.).
The ideal scenario of such scripting is with the help of cron (available on *nix or Linux platforms) or Task Scheduler (on Windows).
- Writing desktop applications
The primary target field of PHP is the web. That’s the main reason for PHP not being one of the best programming languages for creating a desktop application, especially with a GUI.
Interestingly, you can still use PHP for developing a desktop application with GUI (extensive knowledge of PHP required, of course). It’s possible to use some advanced PHP features along with the client-side applications. There are also several PHP frameworks for developing such applications, for example, PHP-GTK.
Using this method, it’s also possible to write cross-platform applications. PHP-GTK is an extension to PHP. Check out PHP-GTK.
- Other features
Due to the wide usage scenario of PHP, almost all the servers in the world support PHP. PHP can also be used as a module or a CGI processor.
With such flexibility, the system admin can choose any operating system and a server app. It’s because almost all the operating systems and server apps available today offer built-in support for PHP. It’s popular, powerful, and flexible and offers both procedural and object-oriented programming for the web developers.
Another significant feature of PHP is the support for a wide range of databases. Check out the list of PHP-supported databases. Thus, PHP turns out to be incredibly versatile for writing database-enabled web pages. PHP can also connect to any database that supports the Open Database Connection standard via the ODBC extension.
Using PHP, it’s also possible to talk to other services using different protocols, for example, HTTP, IMAP, SNMP, POP3, LDAP, and COM (on Windows) etc. Using WDDX complex data exchange, PHP can offer easier contact with all the other web programming languages.
With so many features with the versatility to offer, PHP is not going anywhere. At least, not anytime soon.
Current situation of PHP
PHP is a really old programming language. The current age of programming offers a plethora of programming languages and frameworks. For any new developer who wants to learn on building a modern website, the situation can become quite confusing – which one to choose?
Now, you’ll find out a number of people in the community that offers different opinions on PHP. Some will say that it’s good, some will argue that it’s a bad language to learn today. Some even make fun of PHP.
Let’s take a deep breath, and calm your mind. Of course, there are a number of programming languages that have emerged, each of them offering different feature sets. While PHP isn’t the best programming language for the web (there’s literally no “best” for the web platform; it depends on the requirement), I’m also not advocating to learn PHP either. My target is to demonstrate PHP as a STILL viable and strong programming language for the modern web.
The history of PHP is pretty vibrant and it’s still an astonishing fact that PHP is ongoing strongly in the current world! Just check out the SimilarTech page on PHP.
Pretty interesting, right?
This is a pretty strong figure that shows the power and popularity of PHP.
PHP is more easily approachable programming language than others. While the language is easy, it’s difficult to master with all the additional extensions and features. While a novice PHP dev is highly likely to develop a poorly architected project, it can be overcome with the help of enough training and experience. Of course, there’s no lack of such training materials all around the web.
The older PHP generations were slower. But the latest PHP 7 came up double the performance than before. This makes PHP a pretty lucrative scripting language. PHP also offers an excellent object-oriented class system.
It’s also the easiest language to deploy on a server. Almost every single web hosts allow PHP support with just one click.
PHP is an old language, but it’s getting improved day by day. So, you don’t have to worry about your code and websites going obsolete anytime soon.
Should you learn PHP?
This is a tricky question. The answer depends on your decisions – which sector you prefer to work with, which part of the web you’ve mastered etc.
When you’re working on the back-end, having a profound experience with PHP is paramount. Remember the graph from SimilarTech? The number of sites running PHP is so huge that ignoring PHP can force you to step behind in the competitive market.
There are also a number of website management solutions like WordPress, Drupal, Joomla, and others that use PHP at the core. If you’re ever to work with them, having the knowledge on PHP can easily offer you a big advantage.
Thanks to the internet, there are a number of places where you can start learning PHP right away! Most of them are free. But if you prefer professional teaching, we also got you covered.
Ready? Let’s check out some of the best PHP tutorials you can start following right away!
For learning web development, W3Schools is definitely one of the best choices. Each of its tutorials is sectioned into different small lessons. You don’t have to put too much effort into understanding each lesson and applying them in the necessary spot.
On W3Schools, you’ll also find out plenty of example code. Moreover, the online editor of W3Schools let you test your code in whatever scenario you’d like to enjoy.
There are a number of resources on the web on PHP. Not all of them are kept up-to-date. As we’ve already mentioned before, it’s really important to keep your knowledge of PHP up-to-date. Otherwise, you’ll miss the latest and greatest features of the latest PHP changes and improvements.
Well, let’s jump on PHP: The Right Way right away! It’s an all-in-one collection of the entire PHP programming language.
PHP: The Right Way is always kept up-to-date with all the latest PHP tutorials. At the time of writing this article, the tutorial features PHP 7.2.
Well, what’s a better place to start learning software development? YouTube is basically the synonym of video streaming today. With millions of content creators, billions of users and trillions of views, YouTube can be the secret ground of learning programming!
PHP is such a popular programming language for the web. That’s why you’ll find out a number of PHP tutorials. Here are some of my most favorite YouTube tutorials on PHP.
PHP Programming Language – Full Course by freeCodeCamp.org
PHP Tutorials by mmtus
PHP Tutorials Playlist by thenewboston
Udemy is one of the most popular choices for paid tutorials on a ton of topics. All the courses are available online. You can continue learning right from where you left. There’s no time limit; enjoy your time and learn whatever you want in your own way.
In the case of PHP, there are also a number of available tutorials on Udemy. Personally, I prefer this tutorial the most. All you need is just the basic understanding of HTML. If you don’t have knowledge on HTML, don’t worry. The course includes a free HTML course as well.
There are also other advanced tutorials included in the package, for example, using AJAX, password hashing, Bootstrap, MySQL and a lot more!
The total course features 38 hours on-demand video on each and every single section of PHP. Starting from the beginning to the very advanced, the course guarantees to make you into a PHP master.
PHP will always be one of the finest programming languages for the web due to its simplicity, versatility and feature sets. With more and more improvement in the future, PHP is here to stay for decades to come.
Each day, there are more and more websites being developed using PHP and other PHP-powered software. So, in order to become a competitive developer in the web development market, having a profound knowledge of PHP is necessary.
There are more and more programming languages and frameworks that are coming and going away. However, PHP has been ongoing with great success.
Is PHP outdated? NO. Will PHP become outdated? Only time can tell. But one thing for sure – the time PHP becomes outdated, it’s not ANYTIME SOON.