Sunday, April 3, 2016

PHP 7 : Important things of PHP 7

There are some some important things of PHP 7 which are listed below with its detail description.

  • SCALAR TYPE DECLARATIONS
  • Return type Declarations
  • Null Coalesce Operator
  • ?? Operator
  • Spaceship operator
  • Constant array using define()
  • Uniform variable syntax
  • JIT Engine
  • Abstract Syntax Tree
  • Standalone Multi thread web server
  • Asynchronous Programming

Undoubtedly, this server side scripting language is today the language that is much in demand. With a history of more than two decades, PHP has grown in popularity right from its version 3.0. As time passed, numerous features were added to this language, making the task of web development much interesting. 

Now PHP 5 and PHP 6 is old one, this is time to learn something fast and new. I.e.  PHP 7. PHP 7 is the upgraded version of programming language PHP. We are considering a lot of advantages of PHP 7 over PHP 6 and PHP 5. Major question for the programmers is; is it necessary to learn PHP 6 or we can skip one version and directly connect to the major release of PHP 7?
    
     Yes, we can directly move for the PHP 7 but the thing is we should have the idea about the advantages of PHP 7. So, above I mentioned some advantages of PHP 7 So let’s start with detail description of that.

Scalar type Declarations

It comes in two flavors
1)default
2)strict

Their are some types of Parameters which can be enforced which are given below
strings(string),integers(int),floating point numbers(float),Boolean(bool),Double(double),Class Nam (class),Interfaces,arrays(array)

Example :- 
<?php
function addInts(int ...$ints)
{
//it retrns sum of integers
}
var_dump(addInts(5,1,4.3,6.1));
?>

O/p:-
int(16)

Return type Declarations

PHP 7 has put the Return type Declarations which is as similar as argument type declarations.

It specifies the type of a value which will be return from the Function.

Example :-

<?php

function addition_arrays(array ...$arrays) : array

{

//it retrns sum of particular array

}

print_r(arraysSum([4,3,7], [1,1,8], [2,2,2]));

?>


O/p:-

Array

(

[0] = 14

[1] = 10

[2] = 6

)

Null Coalesce Operator

Not the catchiest name for an operator, but PHP 7 brings the null coalesce so I thought I'd share an example.In PHP 5, we already have a ternary operator, which tests a value, and then returns the second element if that returns true and the third if it doesn't:

echo $count ? $count : 10; // outputs 10
There is also a shorthand for that which allows you to skip the second element if it's the same as the first one:

echo $count ?: 10; // also outputs 10

?? Operator

In PHP 7 we additionally get the ?? operator which rather than indicating extreme confusion which is how I would usually use two question marks together instead allows us to chain together a string of values. Reading from left to right, the first value which exists and is not null is the value that will be returned.

// $a is not set
$b = 16;

echo $a ?? 2; // outputs 2
echo $a ?? $b ?? 7; // outputs 16

It returns its first operand if it exists and is not NULL; otherwise it returns its second operand. 

This construct is useful for giving priority to one or more values coming perhaps from user input or existing configuration, and safely falling back on a given default if that configuration is missing.


Spaceship operator

The spaceship operator is used for comparing two expressions.
It returns -1,0 or 1 when $var1 is respectively less than or equal to or greater than $var2

Constant array using define()

      Into php 7 array can be define using define() instead const.

      You can define a constant by using the define() function or by using the const keyword outside a class definition as of PHP 5.3.0. Once a constant is defined, you can never change the value of that constant.

      You can get the value of a constant by simply specifying its name. Unlike with variables, you should not prepend a constant with a $. You can also use the function constant() to read a constant's value if you wish to obtain the constant's name dynamically. Use get_defined_constant() to get a list of all defined constants.
       
       Constant and global variables will get memory into different namespaces. For ex. False and $false are generally different.

Example
<?php
// Works as of PHP 5.3.0
const variable1 = 'Hello Peter';

Example
echo PETER;

// Works as of PHP 5.6.0
const variable2 = variable1.'; Goodbye Peter';
echo variable2;

const array1 = array('peter', 'adam', 'wilson');
echo array1[1]; // outputs "adam"

// Works as of PHP 7
define('array1', array(
'peter',
'adam',
'wilson'
));
echo array1[1]; // outputs "adam"
?>

Uniform variable syntax: -

           Variable operators released PHP 7 obtain wider orthogonality. Unlike in the rest of PHP versions, it is possible to have a new operator combinations. The flexibility of combining variable operators arbitrarily is allowed.

           Added to the above mentioned, PHP 7 will offer consistent 64-bit support, Anonymous class support, Isset Ternary Operator, Abstract syntax tree, null coalesce operator, lots of libraries, generator return expressions, generator delegation, and so on.


JIT Engine: 

           Just like java and Zend engine in PHP 7 you will get JIT Engine through which any coder can allow multiple calls to the same code to run a faster

Abstract Syntax Tree (AST): 

            This is an intermediary structure in PHP compilation process. It will expose many numbers of extensions and plugins that will help coders. It will open gate for the developers or their programs to use tools like Static code analyzers to detect bugs & potential optimization into your code.

Standalone Multi thread web server: 

           This is the most important feature that should be present into the PHP 7. This is a feature that already present in HHVM (Facebook) to maintain the high load of traffic with in the low cost of hardware & servers. Through the standalone multi thread web server can handle multiple number of requests on single memory pool. It will also help to manage the single pool of database connections and manage the opened database connections to high reach of server.

Asynchronous programming: 

         In Operating System, everyone would hear about that word. This is terminology stands for parallel operation handling on same request PHP 7 came with this feature; this is make PHP 7 is a robust platform for the programmers or developers.
Undoubtedly, this server side scripting language is today the language that is much in demand. With a history of more than two decades, PHP has grown in popularity right from its version 3.0. As time passed, numerous features were added to this language, making the task of web development much interesting. 
    
     Yes, we can directly move for the PHP 7 but the thing is we should have the idea about the advantages of PHP 7. So, here I will mention some advantages of PHP 7.

             Feel free to comment below your experience with above approach and If you still find any problem  with above steps Let me know I would love to help you to resolve your  problem.

              For More Technological information Stay tuned to visionfortech.blogspot.com

No comments:

Post a Comment

Protected by Copyscape