是什么?:在PHP5.3?[重复]
-
23-09-2019 - |
题
可能的重复: 什么是PHP经营者"?"和":"所谓的和他们做什么?
<?PHP
require __DIR__.'/c.php';
if (!is_callable($c = @$_GET['c'] ?: function() { echo 'Woah!'; }))
throw new Exception('Error');
$c();
?>
Twitto使用了几个新的功能,可作为的PHP5.3:
- 的 DIR 恒
- 的?:操作员
- 匿名的功能
什么2号做的 ?: 在PHP5.3?
此外,他们是什么意思通过匿名的功能吗?不是那东西已经存在一段时间?
解决方案
?:
是一种形式的有条件的操作者,这是以前只为:
expr ? val_if_true : val_if_false
在5.3它可以离开了中间部分,例如 expr ?: val_if_false
这相当于:
expr ? expr : val_if_false
从 手册:
由于PHP5.3,能够离开了中间部分有条件的操作员。表达
expr1 ?: expr3
返回expr1
如果expr1
计算结果为TRUE
, ,expr3
否则。
其他提示
的 ?:
操是的 有条件的操作者 (经常称为的三operator):
表达
(expr1) ? (expr2) : (expr3)
计算结果为expr2
如果expr1
计算结果为 真的, ,expr3
如果expr1
计算结果为 假.
在下述情况下:
expr1 ?: expr2
表达评估的价值的 expr1
如果 expr1
是 真的 和 expr2
否则:
由于PHP5.3,能够离开了中间部分的三操作员。表达
expr1 ?: expr3
返回expr1
如果expr1
计算结果为 真的, ,expr3
否则。
不隶属于 StackOverflow