使用三元条件的两个if语句


Two if statements using ternary condition

标题似乎令人困惑,但这是我第一次使用三元条件。我已经读到三进制用于生成内联if/else语句。不使用其他方法是不可能的。这是真的吗?

我想用三元条件来改变这一点,以便练习

if (isset($_SESSION['group']
{
if ($_SESSION['item'] == 'A')
{
echo "Right!";
}
}

它只有两个if语句。第二个if与另一个嵌套。我也读到过,要使一个没有其他可能的三进制,它只需要设置为null或空字符串。

这是一个糟糕的例子,因为您可以在嵌套的if:上使用AND运算符

$result = isset($_SESSION['group'] && $_SESSION['item'] == 'A' ? true : false;

当然,你也可以嵌套三元运算符:

$result = isset($_SESSION['group'] ? ( $_SESSION['item'] == 'A' ? true : false ) : false;

带有回波

echo  isset($_SESSION['group'] ? ( $_SESSION['item'] == 'A' ? "Right!" : "false" ) : "false";
echo (isset($_SESSION['group']) && $_SESSION['item'] == 'A') ? "Right" : ""

更好(可读、可维护(,使用:

if (isset($_SESSION['group']) && $_SESSION['item'] == 'A')
{
   echo "Right!";
}
isset($_SESSION['group'] ? (if ($_SESSION['item'] == 'A') ? echo "Right" : null) : null

试试这个,我想它可能行得通。

要进一步了解Java中的三元条件,请参阅http://www.devdaily.com/java/edu/pj/pj010018

您可以嵌套两个三元语句作为示例:

echo (isset($_SESSION['group']))?($_SESSION['item']== 'A')?'Right!':null:null;

你知道你也可以这样做吗?(isset($_SESSION['group']) && ($_SESSION['item']=='A')) &&($result$c= 1);echo (isset($_SESSION['group']) && ($_SESSION['item']=='A')) ? 'Hello!':'World!';