WHAT ARE THE MAJOR DIFFERENCE BETWEEN PHP 5 AND PHP 7

PHP 5 vs PHP 7

PHP is a server side scripting language designed for web development by Rasmus Lerdorf in 1994. Since its launch in 1994 PHP has become an industry standard supporting almost 80% of the websites ( 79.8% to be precise) with its closest competitor being ASP.Net at 19.8% and others like Ruby, Java trailing far behind.

The PHP development team released the latest version of PHP: PHP 7 claiming it to be twice as fast as its predecessor PHP 5. So, is migrating to PHP 7 really worth it?

Let’s get into some details:

Advantages:

  1. Performance: As per Zend Technologies, the performance improvement is huge!! Just upgrading to PHP 7 gives enormous performance upgrades. Hence, PHP 7 is often termed PHPNG (PHP – Next Gen) taking the performance of your code to a whole new level.
  2. Return Type: Developers have been raising their eyebrows over not being able to declare a return type for their function. This has somewhat been taken care of in PHP 7 where you will be able to declare what type of value will be returned. Eg. :
    public function area (float $r) : float
    {
       return 3.14*$r*$r;
    }
  1. Spaceship Operator: As the name suggests, the spaceship operator introduced is certainly from a different world. It can be mostly used in sorting and combined comparison. Example:

Before:


 

    function sort ($a,$b)
    {
        if ($a>$b)
            return 1;
        else if ( $a ==$b)
            return 0;
       else
            return -1;
    }

 In PHP 7:

    function sort ($a,$b)
    {
       return $a < = > $b;
    }
  1. Null Coalesce Operator:The coalesce operator (??) returns result of its first operand if it exists, or null if it doesn’t. Eg. :

Before:

   if (isset ($_GET [‘name’]))
   {
        $name = $_GET [‘name’];
   }
   else
        $name = null;

In PHP 7:

$name = $_GET [‘name’]?? Null;

Additional Features:

  • Unicode Codepoint Escape Syntax : PHP 7 introduced syntax to escape Unicode codepoint as below :
          echo “\u{202E} Reverse “;      // This outputs : esreveR
  • Deprecation of mysql_* functions: PHP 7 has deprecated all mysql_* functions, now developers have to use mysqli (the intelligent version of MySQL) instead.

 Cons:

While there is no major downside to it, but to just point out, here is a list of some:

  1. A lot of extensions are not ready yet for PHP 7.
  2. If anyone has functions like “ereg” and “mysql” buried deep inside their code base, they are gonna strike a Backward Compatibility wall as these functions are deprecated and, it is going to be a real pain in the behind to upgrade.

Conclusion:

PHP 7 is the future of PHP and all the applications will need to upgrade to PHP 7 sooner or later. Like all major revolutions throughout history, the PHP 7 revolution will also be spilling some blood before producing something awesome.

How do you feel about PHP 7 in general? Is it heading in the right direction? Let us know!!