php - 简单的 PHP isset 测试

标签 php ternary-operator

下面的这个似乎不像我期望的那样工作,事件虽然 $_GET['friendid'] = 55 它返回 NULL

<?PHP

$_GET['friendid'] = 55;

$friendid = (!isset($_GET['friendid'])) ? $_GET['friendid'] : 'empty';

echo $friendid;
exit;

?>

最佳答案

截至PHP 7's release ,您可以为此使用空合并运算符(双“?”):

$var = $array["key"] ?? "default-value";
// which is synonymous to:
$var = isset($array["key"]) ? $array["key"] : "default-value";

在 PHP 5.3+ 中,如果您要检查的只是一个“truthy”值,您可以使用“Elvis 运算符”(注意这不会检查 isset)。

$var = $value ?: "default-value";
// which is synonymous to:
$var = $value ? $value : "default-value";

关于php - 简单的 PHP isset 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1248864/

相关文章:

PHP检查提交了哪个表单

php - 如何在 laravel 5.4.10 中添加自定义类

php - 如何让 PHP 在遇到错误时显示 Apache 的 500 错误页面,而不是空白页面?

javascript - 将 JavaScript 三元运算符转换为 if than else 语句

objective-c - 在 Objective-C 中使用三元运算符 + && 执行赋值和操作?

javascript - 如何在三元运算符上告诉 javascript "any number bigger than"?

php - 找到 .ini 文件但内容丢失(parse_ini_file() 不工作)

php - 如何使用 PHP GD 库将 PNG 转换为 8 位 PNG

java - PriorityQueue 和三元运算符

c# - 是否可以从 C# 中的对象修改或删除匿名类型?