在php中,如果elseif else,如何使用三元运算符?
我想对if-elseif-else使用三元运算符。但这对我不起作用 请检查以下代码:在php中,如果elseif else,如何使用三元运算符?,php,ternary-operator,Php,Ternary Operator,我想对if-elseif-else使用三元运算符。但这对我不起作用 请检查以下代码: $openMon = "00:01"; // The below Line Returns Time $openMon = "00:00"; // The below Line Returns Close <td><?=(($openMon == '00:00')?'Close':date("g:i a", strtotime($openMon)));?></td>
$openMon = "00:01"; // The below Line Returns Time
$openMon = "00:00"; // The below Line Returns Close
<td><?=(($openMon == '00:00')?'Close':date("g:i a", strtotime($openMon)));?></td>
我试过:
<td><?=isset((openMon == "")?'-':(($openMon == '00:00')?'Close':date("g:i a", strtotime($openMon)));?></td>
任何想法或建议都会有帮助。您可以使用嵌套三元运算符。 同样的问题也出现了 您的代码如下所示:
$openMon = !$openMon ? "-" : ($openMon == '00:00' ? "Close" : date("g:i a", strtotime($openMon)))
您可以测试此代码段。。。。但是,当你有一个if-else以更干净、更容易阅读的方式做同样的事情时,为什么你想要一个混乱的三元数?@Andreas感谢你的回答。我正在学习代码,所以我想学习如何在一行中使用这些东西。issetopenMon==这在if循环中有效吗?少了一美元。也不要询问是否设置了openMon==。询问是否设置了$openMon。或者如果$openMon==。你在做这两件事——单行代码是一种混乱的编码方式,当你需要调试或更改某些东西时,你会后悔的。我强烈建议你不要使用三元,如果它是两个以上的条件。我个人不会用它除非。。。嗯,我不知道该怎么说…@kerbholz谢谢你的回复。我的if-else工作正常,但我想在turnary操作符中使用。谢谢你的回复。你是一个伟大的程序员。我想学习,你教了我。谢谢。祝您愉快!顺致敬意,
if($openMon == ''){
$openMon = "-";
}else{
if($openMon == '00:00'){
$openMon = "Close";
}else{
$openMon = date("g:i a", strtotime($openMon)));
}
}
$openMon = !$openMon ? "-" : ($openMon == '00:00' ? "Close" : date("g:i a", strtotime($openMon)))