當前位置:  首頁  >  PHP教程  >  PHP 基礎  >  基礎教程

從PHP5到PHP7的注意事項(2)PHP7的一些新特性

從PHP5到PHP7的注意事項(2)PHP7的一些新特性

1. define定義常量不僅僅只支持標量,還支持了數組


define('PHPXY', array(
    
'鳳姐',
    
'芙蓉姐姐',
    
'楊冪是臭腳'
));

echo 
PHPXY[1]; // 輸出的結果是“芙蓉姐姐”
?>


2.比較的時候支持<=> 可以比較字符串,數組,整型。

php

// Integers
echo <=> 1// 0
echo <=> 2// 1
echo <=> 1// 1

PHP學院評:我們認為實際用戶不大,在實際工作中使用量不會很高


3.在PHP7 中支持了 函數的強制參數類型指定


// Coercive mode
function sumOfInts(int ...$ints)
{
    return 
array_sum($ints);
}

var_dump(sumOfInts(2'3'4.1));


//本例中會輸出9,你想想為什么喲?——因為強制規定為了整型


PHP學院評:function funcName(... 參數) 是PHP5.6開始支持的。不要認為是PHP7里的知識點



4. 返回類型也在強制進行規定


function arraysSum(array ...$arrays): array
{
    return 
array_map(function(array $array): int {
        return 
array_sum($array);
    }, 
$arrays);
}

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



5. 新建了call方法在外部來調用,更短的方式將匿名函數,追加進對向中且完成調用

class {private $x 1;}

// Pre PHP 7 code
$getXCB = function() {return $this>x;};
$getX $getXCB>bindTo(new A'A'); // intermediate closure
echo $getX();

// PHP 7+ code
$getX = function() {return $this>x;};
echo 
$getX>call(new A);


6. 成員方法中也可以規定必須要返回某個類類型


class {}
class 
extends {}

class 
C
{
    public function 
test() : A
    
{
        return new 
A;
    }
}

吐了個 "CAO" !
掃碼關注 PHP1 官方微信號
PHP1.CN | 中國最專業的PHP中文社區 | PHP資訊 | PHP教程 | 數據庫技術 | 服務器技術 | 前端開發技術 | PHP框架 | 開發工具 | PHP問答
Copyright ? 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社區 版權所有
     
28玩法