Php 什么是';零合并';(??)操作员用于?
随着新PHP版本PHP7的发布,引入了新的特性。在这些新功能中,有一个我不熟悉的操作员。Php 什么是';零合并';(??)操作员用于?,php,coding-style,operators,php-7,Php,Coding Style,Operators,Php 7,随着新PHP版本PHP7的发布,引入了新的特性。在这些新功能中,有一个我不熟悉的操作员。空合并运算符 这个运算符是什么?有哪些好的用例?您可以使用它初始化可能为null的变量 这个??运算符称为空合并运算符。它返回 如果操作数不为空,则为左操作数;否则它将返回 右操作数 资料来源: (不依赖于语言) 用例 你可以写 $rabbits; $rabbits = count($somearray); if ($rabbits == null) { $rabbits = 0; } 您可以使
空合并运算符
这个运算符是什么?有哪些好的用例?您可以使用它初始化可能为null的变量 这个??运算符称为空合并运算符。它返回 如果操作数不为空,则为左操作数;否则它将返回 右操作数 资料来源: (不依赖于语言) 用例 你可以写
$rabbits;
$rabbits = count($somearray);
if ($rabbits == null) {
$rabbits = 0;
}
您可以使用较短的符号
$rabbits = $rabbits ?? 0;
与
$username=isset($\u GET['user'])$_获取['user']:'nobody'代码>
???根据PHP手册,是三元速记:
空合并运算符(??)已添加为语法糖,用于需要将三元运算符与isset()结合使用的常见情况。如果第一个操作数存在且不为空,则返回第一个操作数;否则返回第二个操作数
来自:“空合并运算符(??)已添加为语法糖,用于需要将三元运算符与isset()结合使用的常见情况。如果第一个操作数存在且不为空,则返回第一个操作数;否则返回第二个操作数。”
$username = $_GET['user'] ?? 'nobody';
// Fetches the value of $_GET['user'] and returns 'nobody'
// if it does not exist.
$username = $_GET['user'] ?? 'nobody';
// This is equivalent to:
$username = isset($_GET['user']) ? $_GET['user'] : 'nobody';
// Coalesces can be chained: this will return the first
// defined value out of $_GET['user'], $_POST['user'], and
// 'nobody'.
$username = $_GET['user'] ?? $_POST['user'] ?? 'nobody';