Dieser Artikel gibt Ihnen hauptsächlich eine Einführung in die neuen Funktionen von PHP7.0. Ich hoffe, dass er Ihnen helfen kann.
1.SkalareTypdeklaration hat zwei Modi: obligatorisch (Standard) und strikt. Unterstützt String (string), Ganzzahl (int), Gleitkommazahl (float) und boolesche Werte (bool).
Strikter Modus:
declare(strict_types=1); function aa(int $a){ return $a; } echo aa('5');//会报错。
Durchsetzungsmodus:
declare(strict_types=0);//默认就是强制 function aa(int $a){ return $a; } echo aa('5');//输出5。
function aa(int $a) : array{ return [$a]; }
Aufgrund der großen Anzahl gleichzeitiger Verwendungen von ternären Ausdrücken und isset() im täglichen Gebrauch haben wir den Null-Koaleszenzoperator () hinzugefügt ??) Dieser syntaktische Zucker. Wenn die Variable existiert und ihr Wert nicht NULL
ist, gibt sie ihren eigenen Wert zurück, andernfalls gibt sie ihren zweiten Operanden zurück.
// if it does not exist. $username = $_GET['user'] ?? 'nobody'; // This is equivalent to: $username = isset($_GET['user']) ? $_GET['user'] : 'nobody';
echo $a <=> $b;//当$a>$b 输出1 当$a < $b 输出-1 当$a == $b 输出0
这个比较好,如下所示:
defined('ANIMALS') or define('ANIMALS', [ 'dog', 'cat', 'bird' ]); var_dump(ANIMALS);//输出array(3) { [0]=> string(3) "dog" [1]=> string(3) "cat" [2]=> string(4) "bird" }
$a = new class{ public function echo(){ return $this; } public function className(){ return __CLASS__; } }; var_dump($a->className()); //string(67)"class@anonymousF:\WWW\test\test02.php001A0165"
Closure::call() 现在有着更好的性能,简短干练的暂时绑定一个方法到对象上闭包并调用它。
class A{private $x = 1;} $getx = function(){ return $this -> x; }; echo $getx->call(new A); //输出1
相关推荐:
我整理的PHP 7.0主要新特性,php7.0新特性_PHP教程
Das obige ist der detaillierte Inhalt vonEinführung in neue Funktionen von PHP7.0. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!