What is the overall impact of PHP7 on overall PHP ecosystem? And what are the major improvements in the 7th revision?
To me PHP 7 is "About !!!!!ING TIME!" for the simple fact that it removes insecure garbage we've been told for over a decade (pretty much since PHP 5 dropped) to stop using! The outdated outmoded mysql_ functions that NEVER should have existed in the first place did nothing but encourage sloppy insecure coding.
Admittedly, mysqli and PDO do not guarantee that people still won't do the dumbass ignorant practice of sleazing together variables in their query strings, but at least a proper mechanism -- prepare/execute -- exists in them and now that mysql_ is no longer supported, MAYBE we can have some of the outdated web rot BS tutorials taken off the web?
Really, if you've been paying ANY attention the past DECADE, your code should run just fine with ZERO modifications in PHP 7. There are new features that can simplify your code, but if you've seen those red warning boxes on php.net about not using certian functions and methods, and have had any clue what good practices are -- there is NO reason for the conversion to be the big "blocking" issue that some people seem to see it as.
Kind of like the conversion from PHP 4 to PHP 5, where mouth-breathing dumbasses ran both side by side either out of ignorance, ineptitude, or outright laziness.
There are still a number of things that would REALLY help make the language more secure -- one of PHP's long-standing problems is that like most scripting/interpreted languages, it's "insecure by design". Code elevations and code injections are just too easy to create... one of the worst offenders being the ability to include/require just about any file regardless of it's filename, and/or readfile/fopen same... Do you have any idea how many simple stupid exploits for existing CMS and forum softwares would fall flat on their face if include and require were only allowed to open files ending in .php and all the other file operations were blocked from accessing same?
But still, PHP 7 is a step the right direction... and the speed improvements are just icing on the cake.
It's laughable but I've seen SO many people blame poor performance on the database when it's sloppy code, mismanaged wasteful memory use or excessive use of output at fault... which is WHY so many poorly written systems see massive speed improvements under PHP 7. (sorry Drupal, Wordpress, Laravel, etc... truth hurts, doesn't it?) PHP 7 makes crappy code run better... well written well thought out code? Sees significantly less improvement, but ANY improvement in speed is always welcome.
I find that PHP7 has let us all move on from the past. PHP 5 had a very large range of features. If someone tells you they use PHP 5, they could be anywhere from 5.2, (no namespacing, traits, etc) to using version 5.6.
With PHP7, we have a good base of features and speed to work off, and we know what those features allow us to do. Hopefully any large changes like Namespacing, would go into a new level release, like PHP8.
It's time to forget the past of what PHP was, and start focusing on what it is, and can be.
Mario Giambanco
Director of User Experience Development
DigitalOcean has a pretty good write up of what has changed
and
grep -rnw '/path/to/php/files/' -e "ereg"
Can help you find deprecated commands
But - old habits die hard. A small website with a couple dozen pages - no big deal to make sure everything works right. New websites and the host has PHP 7 on it? Sure - I'd use it. A big website with thousands of pages... potentially costing hundreds of programming hours to fix? That's a long term migration plan.
If it isn't broken - don't fix it :)