在PHP7 +中,有一个新的“空合并运算符”。 -http://php.net/manual/en/migration70.new-features.php#migration70.new-features.null-coalesce-op说:
$username = $_GET['user'] ?? 'nobody';
// This is equivalent to:
$username = isset($_GET['user']) ? $_GET['user'] : 'nobody';
在这种情况下,此代码为什么会导致错误/通知:
$username = (int)($_GET['user']) ?? 'nobody';
注意:未定义索引:用户
这是否是预期的行为(如果是这样,是否违反了该运算符的目的)?将(int)
更改为(string)
等时,会有类似的提示。