这个PHP语法是什么意思? (问号)

时间:2014-01-03 23:35:12

标签: php syntax ternary-operator

这行PHP代码是什么意思?也就是说,问号位后跟真,冒号,假?

return(isset($_SESSION['id'])) ? true : false;

5 个答案:

答案 0 :(得分:1)

这是ternary operator

这简直就是:

if (isset($_SESSION['id']))
  return true;
else
  return false;

答案 1 :(得分:1)

同样:

if isset($_SESSION['id']) {
     return true;
} else {
     return false;
}

答案 2 :(得分:1)

此语法适用于PHP中的三元运算符

它的运行方式与(Condition to evalute) ?( Return result if condition is true) : (return result if condition is false)

相同

在您的情况下为r eturn(isset($_SESSION['id'])) ? true : false;

如果设置了$_SESSION['id'],它将返回true,如果未设置session,则返回false。

?标记对于if语句是等效的,而:是for else

它是if else陈述

的缩写形式

link:http://davidwalsh.name/php-shorthand-if-else-ternary-operators

答案 3 :(得分:0)

这是

的三元运算符.short
if(isset($_SESSION['id'])){ 
   return true;
 }else{ return false;}

但是这没用,因为isset()已经返回true或false

答案 4 :(得分:-1)

? boolean-condition [action] : [action]ternary conditional operator,简称:

if ([condition]) { [action] } else { [action] }