Php 三元算子的正确使用

Php 三元算子的正确使用,php,if-statement,mysqli,echo,Php,If Statement,Mysqli,Echo,我正在尝试向收件箱中的未读邮件添加“新建”。我认为我不能在echo中使用if语句,我已经尝试过,但未能理解三元运算符的正确用法。我将感谢任何帮助。非常感谢 如果read_yet='no',我想将此代码添加为另一个echo语句: echo '<td>NEW</td>' ; echo'NEW'; 这是我收件箱的当前代码 $sql = mysqli_query($con, "select * from messages WHERE deleted = 'no' AND t

我正在尝试向收件箱中的未读邮件添加“新建”。我认为我不能在echo中使用if语句,我已经尝试过,但未能理解三元运算符的正确用法。我将感谢任何帮助。非常感谢

如果read_yet='no',我想将此代码添加为另一个echo语句:

echo '<td>NEW</td>' ;
echo'NEW';
这是我收件箱的当前代码

$sql = mysqli_query($con, "select * from messages 
WHERE deleted = 'no' AND to_user = '" . $_GET['username'] . "'
ORDER BY id DESC");

while ($row = mysqli_fetch_array($sql)){

echo '<tr>';
echo '<td><a href="profile.php?username=' ;
echo $row['from_user']  ;
echo '">';
echo '<img id="usersimage" src="images/profileimg/thumbnail_'.$row['from_user'];
echo '.jpg"</a></td>' ;
echo '<td><a href="users.php?username=' ;
echo $row['from_user']  ;
echo '">';
echo $row['from_user'];
echo "</a></td><td><a href='messageid.php?id=".$row['id']."'><font color='#b2ccdb'>" .$row['subject'] ;
echo '</a></font></td>';
echo '</tr>';

}
$sql=mysqli\u查询($con,“从消息中选择*)
其中deleted='no'和to_user='“$\u GET['username']”
按id DESC)订购;
while($row=mysqli\u fetch\u数组($sql)){
回声';
回声';
回声';
}

如果要添加另一列,我不建议使用三元运算符,而只是使用
If

if ($row['read_yet' == 'no') {
    echo '<td>NEW</td>';
}
if($row['read\u yet'=='no')){
呼应"新",;
}
但是,如果总是输出此列并需要更改显示,则可以使用三元运算符

echo '<td>' . ($row['read_yet' == 'no' ? 'NEW' : 'READ') . '</td>';
echo'。($row['read_yet'='no'?'NEW':'read');

注意:三元运算符会产生行噪波。因此,我更喜欢使用临时变量、辅助函数或传统的
if
如果要添加另一列,我不建议使用三元运算符,而只是使用
if

if ($row['read_yet' == 'no') {
    echo '<td>NEW</td>';
}
if($row['read\u yet'=='no')){
呼应"新",;
}
但是,如果总是输出此列并需要更改显示,则可以使用三元运算符

echo '<td>' . ($row['read_yet' == 'no' ? 'NEW' : 'READ') . '</td>';
echo'。($row['read_yet'='no'?'NEW':'read');
注意:三元可以产生线噪声。因此,我更喜欢临时变量、辅助函数或传统的
(如果

是这样的三元):

$foo = ($bar) ? 'true result' : 'false result';
在功能上等同于:

if ($bar) {
   $foo = 'true result';
} else { 
   $foo = 'false result';
}
像这样的三元组:

$foo = ($bar) ? 'true result' : 'false result';
在功能上等同于:

if ($bar) {
   $foo = 'true result';
} else { 
   $foo = 'false result';
}

对我来说,我倾向于在赋值中使用三元运算符,例如:
$myValueSet=isset($\u POST['myValue'])?“YES':“NO”
。第一部分是表达式。如果为true,则返回第二部分,如果为false,则返回第三部分。对于我来说,我倾向于在赋值中使用三元运算符,例如:
$myValueSet=isset($\u POST)['myValue'])?“是”:“否”
。第一部分是表达式。如果为真,则返回第二部分,如果为假,则返回第三部分。太棒了!拥有一个新的阅读栏是正确的选择。非常感谢!现在学习这个选项将对我未来有很大帮助。太棒了!拥有一个新的阅读栏是正确的选择。非常感谢!L现在获得这项选择将对我未来有很大帮助。+对于普通教育。+对于普通教育。