Pau*_*sey 31 php syntax ternary-operator php-5.2
我刚刚将一些旧的PHP文件上传到新服务器,并在速记三元操作上得到解析错误(意外':').例如:
$y = $x ?: "Some default";
Run Code Online (Sandbox Code Playgroud)
php版本是5.2.16代码中充斥着这些简写?:,所以在更改它们之前我想我是否会知道是否有人知道这一点,因为我现在还没有使用PHP一段时间.
aza*_*zat 63
这仅在PHP 5.3之后可用
表达式(expr1)?(表达式2):(表达式3)的计算结果为如果值为expr2 expr1求到TRUE,和表达式3如果expr1的计算结果为FALSE.
从PHP 5.3开始,可以省略三元运算符的中间部分.表达式expr1?:expr3如果expr1的计算结果为TRUE则返回expr1 ,否则返回expr3.1
有关更多上下文,请参阅此示例
或更有用但注释中的注释:http: //www.php.net/manual/en/control-structures.if.php#102060
1 http://php.net/manual/en/language.operators.comparison.php
| 归档时间: |
|
| 查看次数: |
35528 次 |
| 最近记录: |