Php if-else语句在TD中得到了响应
大家好,(无法决定是迎接上午、下午还是晚上):p 我想就我的问题寻求一些建议,或者更确切地说是帮助。我有一个显示一些号码的代码,包括短信号码(SIM卡号)和手机号码。该代码位于如下所示的回显TD中 原始代码Php if-else语句在TD中得到了响应,php,html,Php,Html,大家好,(无法决定是迎接上午、下午还是晚上):p 我想就我的问题寻求一些建议,或者更确切地说是帮助。我有一个显示一些号码的代码,包括短信号码(SIM卡号)和手机号码。该代码位于如下所示的回显TD中 原始代码 <table style = 'font-family:Verdana;font-size:11px;' width = '100%' cellpadding = '1px' cellspacing = '1px'>
<table style = 'font-family:Verdana;font-size:11px;' width = '100%' cellpadding = '1px' cellspacing = '1px'>
<tr>
<td width = '100px' align = 'right'>Cage No:</td>
<td> ".$row2['gps_num']."</td>
<td width = '100px' align = 'right'>Sim Card No.:</td>
<td> ".$row3['SIM1']."</td>
<td width = '100px' align = 'right'>Animal Type:</td>
<td> ".$devtype."</td>
<td width = '100px' align = 'right' colspan='2'>".$label."</td>
</tr>
</table>
笼号:
“$row2['gps_num']”。”
Sim卡号码:
“$row3['SIM1']”
动物类型:
“$devtype。”
“$label。”
现在我想放置一个if-elseif语句,其中如果$row2['gps_num']有11个字符,那么它将显示SIm卡号而不是cage号。(只需关注第一个TD)如果$row2['gps_num']包含超过11个字符,则第一个TD将显示Cage No
这是我到目前为止得到的结果,但我无法正确地确定我错在哪里
<tr>
<td>
<table style = 'font-family:Verdana;font-size:11px;' width = '100%' cellpadding = '1px' cellspacing = '1px'>
<tr>
if (.$row2['gps_num']. <= 11) {
<td width = '100px' align = 'right'>Cage No.</td>
<td> ".$row2['gps_num']."</td>
}
elseif (.$row2['gps_num']. > 11 ) {
<td width = '100px' align = 'right'>Sim Card No.:</td>
<td> ".$row3['SIM1']."</td>
}
<td width = '100px' align = 'right'>Animal Type:</td>
<td> ".$devtype."</td>
<td width = '100px' align = 'right' colspan='2'>".$label."</td>
</tr>
如果(.$row2['gps_num'].11){
Sim卡号码:
“$row3['SIM1']”
}
动物类型:
“$devtype。”
“$label。”
我感谢所有的帮助。谢谢。您似乎在连接字符串,如果字符串中有
语句,则无法连接
您可以使用三元语句,但在这种情况下,可能更容易终止echo
或字符串生成操作,并使用单独的if
-else
语句来echo
或添加条件部分。您可以使用串联和条件(也称三元)表达式:
echo "<tr>
<td>
<table style = 'font-family:Verdana;font-size:11px;' width = '100%' cellpadding = '1px' cellspacing = '1px'>
<tr>" . (strlen($row['gps_num']) <= 11 ?
"<td width = '100px' align = 'right'>Cage No.</td>
<td> ".$row2['gps_num']."</td>" :
"<td width = '100px' align = 'right'>Sim Card No.:</td>
<td> ".$row3['SIM1']."</td>" ) .
"<td width = '100px' align = 'right'>Animal Type:</td>
<td> ".$devtype."</td>
<td width = '100px' align = 'right' colspan='2'>".$label."</td>
</tr>";
echo”
" . (strlen($row['gps_num']))你的php标签在哪里?你的意思是如果11个字符,那么为什么要将实际值与11进行比较呢?我该怎么做呢,先生,谢谢。就像你在echo中使用$devtype
一样。还有你使用$label
的方式。你似乎已经知道在echo时如何使用变量了,你为什么要问怎么做呢?是的,谢谢,我找到了输出。它可以正常工作,但即使gps_num超过11个字符/字母,它仍然显示cage编号,该编号必须是SIM卡号。我只是从您的原始代码复制了测试。它不测试gps_num
的长度,只测试它的值。使用strlen()
获取长度。
if (strlen($row['gps_num']) <= 11) {
$cols = "<td width = '100px' align = 'right'>Cage No.</td>
<td> ".$row2['gps_num']."</td>";
} else {
$cols = ""<td width = '100px' align = 'right'>Sim Card No.:</td>
<td> ".$row3['SIM1']."</td>";
}