Search code examples
phpoperatorsnew-operatorphp-5.6

** is new power operator instead of power() in php


How to use new version of Power operator instead of pow() in new version of php (5.6)? Like:

echo pow(2,3);

Why output of this line is 512 not 64?

2 ** 3 ** 2;

Solution

  • There is a sample ** operator in php 5.6 +

    $i = 6;
    
    $i **=2; //output 36
    
    $out = $i ** 3 //output 46656
    
    echo 2 ** 3 ** 2; // 512 (not 64) because this line evaluated right to left  => 2 ** (3 ** 2)
    echo -3 ** 2; // -9 (not 9)
    echo 1 - 3 ** 2; // -8
    echo ~3 ** 2; // -10 (not 16)
    

    ** is better than pow(,) .
    When you try to write a math algorithm. ** is a Powerful Operator.
    there's no functional difference between it and pow.
    power operator refrence