我有一个表显示SQL查询的结果。
但是,对于某些特殊的行(其中SOURCE="ABC"),我希望从不同的表中检索数据。
是否最好有一个IF来检查SOURCE,然后相应地打印带有每个数据的行?还是最好在每个框中有多个if,并不断检查SOURCE="ABC",然后显示其中一个表或另一个表中的数据?
这是当前代码的一部分,国际单项体育联合会尚未实施:
<td><?php echo date("D, d M Y", strtotime($val['date'])); ?></td>
<td><?php echo $val['firstName']." ".$val['lastName']; ?></td>
<td align="center"><?php echo $val['city'].", ".$val['state']; ?></td>
<td bgcolor="<?= $bg ?>" align="center"><?php echo $val['status']; ?></td>
<td align="center"><?php echo strtoupper($val['source']); ?></td>
你好,
就结构而言(就可读性而言),它是最好的——至少我对内联的if更满意,例如:
echo $queryResult->data;
echo '</td><td>';
if($queryResult->source == 'test'){
echo 'Get info from other DB..';
}else{
echo $queryResult->source;
echo '</td>'
它对我来说可读性更强,因为你可以"下降";而在THEN块和ELSE块中都包含表的所有内容似乎是多余的,很难读取。
但是,您可能应该了解SQL联接和子查询(假设您使用的是SQL),这样就可以避免对源为XY的每个表行进行另一个查询。这将在不久的将来演变成一场性能灾难。
问候。