It has been awhile over a year since PHP 7 was released. The advanced version that is meant to replace PHP 5 and PHP 6 (failed one) version. And, well… if you’re going into development and making final research before signing a contract, this question might bother you.
So, if you just wondering around and want to make sure that PHP 7 is right for you – the answer is YES. In fact, if you’re not dealing with legacy code, you should just kick-start your project on PHP 7 and stick to it.
Table of Contents
- PHP 7 in Numbers
- Advantages of PHP 7 over PHP 5.6
- PHP 5.6 vs PHP 7 Benchmark
- Just in Time Engine
- Asynchronous Programming
- Syntax Improvements
PHP 7 in Numbers
I see you don’t want to take my words for granted. Then, let me give you several facts that will assure you that choosing PHP 7 is a good idea.
- 69.6% of developers said they are ready to use PHP 7 in production according to Nestify survey.
- Only 3.8% of developers declined and said they would use PHP 7 only if their hosting company will force them to use it.
- Over 70% of developers are using PHP 7 in their development environment, which means you can save some time for your programmers because they won’t need to switch back to PHP 5.6 during the production stage.
- PHP 7 provides roughly 1.8x increase in performance comparison to PHP 5.6.
Read more10 Jan 2019 was PHP 7.3.1 Released
Advantages of PHP 7 over PHP 5.6
How does that happen that a new version is so much better than the old one you may ask. Roughly two times better than the old one to be precise. The answer to this question lies in the number of advancement and core revisions that were made to the PTP 5 version.
PHP 5.6 vs PHP 7 Benchmark
The easiest way of doing benchmark is testing between two WordPress-based websites (which is not the fastest solution) that run on PHP 5.6 and PHP 7.0.
We’ll take two websites that have been set up the same and running on the same amount of memory (512-megabyte digital ocean droplet server) and on the same LAMP tech stack. In our tests, we performed benchmarking by using the Apache benchmark tool. We’ll also test performance with and without Super Cache Plugin for WordPress. Here’re the results:
|PHP 5.6||PHP 7.0|
|Time taken for the test||45.35 s||22.95 s|
|Requests per Second||22.05 r/s||43.56 r/s|
|With Super Cache Plugin|
|Time taken for the test||1.95 s||1.02 s|
|Requests per Second||512.25 r/s||974.26 r/s|
You can also watch this test made by Marcos Nobre on Youtube:
Here’s another benchmark made with the help of OpenLiteSpeed:
As you can see, there is also addition bar called HHVM (HipHop Virtual Machine). HHVM is an open-source virtual machine developed by a Facebook team. Shortly speaking it compiles PHP into native machine code by using just-in-time technology (JIT). HHVM was highly popular before the release of PHP 7. It is based on JIT compiler that serves as an execution engine for the PHP.
Just in Time Engine
You may already know that PHP, C++, Swift, and any other modern programming language is not communicating directly to the hardware. The programming language is just an easier way to talk to the machine. The machine native language is still binary code.
One way or another, each programming language is translated to the binary code by using the compiler. PHP is no different. But what makes it unique is a Just in Time engine, that allows compilation of the code during the execution of the program. This principle is also known as dynamic translation.
JIT system continuously examines the code that is being executed and looks for parts that could be sped up. At this very moment, the compilation or recompilation of the code is made on the go which results in speed improvement.
UPD (thnx to Hackernews readers): JIT compiler hasn’t been introduced in PHP 7 yet.
This feature allows PHP to support multithreading, meaning you can simultaneously perform several tasks. For example, you can call data from a SQL database in parallel with another task.
What’s more asynchronous programming allows easy execution of parallel tasks within a single request which greatly improve the speed of PHP code execution.
There is also some abstract syntax improvements in PHP 7 that made programmers live easier, which consequently will save you some extra hours for development. For example PHP Space Ships, The operator < = > that is used for combined comparisons in sorting.
PHP 7 performs much faster than PHP 5.6
Want to know how to calculate your costs for PHP development? Read this article.
Good Time to Migrating to PHP 7.0.xRead official Manual How to migrate PHP Code between versions PHP 5.6.x - PHP 7.0.x
By 2016 more than 400 developers contributed to the php-src repository. PHP is used in more than 80% of web servers on the internet. Large and vibrant ecosystem and awesome community make it a leading web development platform.
Over two years since PHP 7 development have started, the programing language evolved into a stable version that has a huge popularity across the community and is recognized as an industry standard for web development.