PHP 7 is twice as fast as PHP 5.x and requires one fraction of the server memory.
A 3,760-word article at WP Elevation is about the pain of producing websites. The article expresses everything we hate about website creation. The thought of building “explosive live hand grenades” stresses us. Just reading the article was stressful. Why?
Because it’s true. The nit-picky horrors described are exactly what occur during web projects. Client or website owner expectations are high. Their technical knowledge is often low.
A new monster arose on the WordPress horizon. New problems for PagePipe anyway.
The fragile nature of WordPress and PHP v7.x.
Why does adding PHP 7.x break your site? Our recent GoDaddy-host-server transition rattled the nerves of even the initiated. It’s a good example of what goes wrong. Upgrading PHP version 5.6 to version 7.x is a simple C-panel setting – but not without potential consequences.
PHP 7 released long ago on December, 3rd, 2015. GoDaddy didn’t add this server option for a year and a half. Why? Because they knew the changes might break hundreds of thousands of WordPress websites. They left it up to users to perform the update. And they delayed the service call costs for as long as possible. The GoDaddy default version is set to 5.4. Making users choose their poison was smart. Users then are responsible for breakage. Or dialing back the PHP version themselves – or tracking down fixes. GoDaddy is blameless – sort of.
Above: Pie chart – Percentages of WordPress sites using different PHP versions.
Risk breaking my site? Why even care about PHP version 7.x?
PHP is the code of WordPress, a server-side programming language. It first appeared in 1995. All themes and plugins use PHP, too. Upgrading your site to run on PHP 7 instead of PHP 5.6, you’ll improve the performance of WordPress by 2x. That’s right. Twice as fast is the typical gain in speed. For us, that’s phenomenal. We’ve anxiously waited and watched for this no-extra-cost, speed opportunity. Free speed. Most vendors upgraded long ago. So we felt snubbed. But we didn’t change hosts. We like bragging about good speed achieved under the worst conditions!
PHP 7.x isn’t going to break WordPress – it may cause some of your plugins to malfunction. Perhaps your theme. But the result is the same, your site appears broken. You can test all your plugins using a free plugin. Naturally! We tested with:
PHP Compatibility Checker
Active installs: 30,000+
Compressed download: 1M
Retention: 27 percent
With this plugin above, you can check your site for PHP 7 compatibility.
Active installs: 20,000+
Compressed download: 8k
Retention: 10 percent
With this plugin above, you can check which version of PHP your site is using without using Cpanel access.
So what broke after the change from 5.6 to 7.x?
- Broken Link Checker – compatible – warning 1 – This plugin broke the site when viewed on an Apple iPad. Meaningless code was all over the screen. We disabled the plugin.
- Simple Content Adder – We got a red flag for the file revisions.php. But we couldn’t find it breaking anything. We left it as-is.
- SS Downloads – red flag – This favorite old plugin broke the site with PHP error screen. The plugin failed because it triggered a fatal error. The plugin is for email capture before PDF downloads. We had to dump the plugin. Presently, all our downloads don’t need signup.
- Title Experiments Free – compatible but 7 warnings. We wrote plugin author, Jason Funk, and he updated the plugin to version 8.9 for PHP 7.1 compatibility. No more warnings. Thanks, Jason.
- WordPress Popular Posts – compatible – 24 warnings. The plugin stopped gathering data for page visits. This is the primary reason we use this plugin. It’s very popular with 300,000+ active installs (v3.3.4) but not updated for over 1 year. Why? It’s a pain to get things approved by WordPress. GitHub has version 4.0.0 free substitute – and it’s PHP 7.1 compatible. It has slow Font Awesome onboard but it’s not enqueued. We’re thankful. We like the new GUI control panel for the plugin. The original plugin was a 125k zip file. The new one is 759k. Most extra weight is font overhead for the control panel. It doesn’t affect your site’s front end.
How fast was PagePipe home page after the switch to PHP 7.x?
699 milliseconds unprimed cache and 440 primed. Super fast even on GoDaddy mechanical, shared server with no CDN.
So a quick comparison of primed cache:
PHP 7.2: Pingdom NY PagePipe home page – primed cache: 559ms.
PHP 5.6: Pingdom NY PagePipe home page – primed cache: 567ms.
8 milliseconds gain with TTFB fluctuations. Maybe? Insignificant gain on an optimized page. He’d be better off economizing in other areas.
Why no big gains? Because we have optimized the Home page. There’s a point of diminishing returns. Only fat bloated slow websites benefit from the PHP version switch.
PHP gains are overrated and exaggerated. A bloated site gets the most improvement. So PHP is actually a test of site bloat. Big improvement from PHP means big potential for site optimization.
Mobile WordPress Speed – without coding!