以下は、PHP 7.0 および 7.1 バージョンのいくつかの新機能です。
$foo = null; $bar = $foo ?? 123; // 相当于 $bar = isset($bar) ? $bar : 123
前者が後者より大きい場合は0を返します。 、 1 を返します。後者は前者より大きい場合は -1 を返します。
ジェネレーター
// 在严格模式下,传参类型不匹配会抛出错误 declare(strict_types=1); function fn(int $a) : int { echo $a; } fn(1.2);
var_dump($a <=> $b);$generator->getReturn()
时,会返回null
。而且,在生成器没有输出完全时,使用$generator->getReturn()
定義定数
$a = 0; $b = "abc"; var_dump($a <=> $b); // 注意,字符串在与数字比较时会被当作 0;複数使用宣言
function generator() { yield 1; yield 2; return "a"; } $generator = generator(); foreach ($generator as $val) { var_dump($val); } var_dump($generator->getReturn());
function generator() { yield 1; yield 2; return "a"; } $generator = generator(); var_dump($generator->current()); var_dump($generator->next()); var_dump($generator->getReturn()); // 报错 var_dump($generator->current()); var_dump($generator->next());
デフォルトのパラメーター値との違いに注意してください:オプションのパラメーターの型
define('COLORS', ['red', 'blue', 'black']); echo COLORS[1]; // red
use some\namespace\{ClassA, ClassB, ClassC as C}; use function some\namespace\{fn_a, fn_b, fn_c}; use const some\namespace\{ConstA, ConstB, ConstC};
list($a, $b) = ["a", "b"];反復可能で呼び出し可能な疑似クラス型
、invoke を実装するクラス インスタンス); interface を実装するクラス インスタンス) に制限するには、反復可能な型を使用します。
以上がPHP7.0 および 7.1 のいくつかの新機能のコード共有のメモの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。