我有一个自定义网络应用,从FileMaker数据库获取数据并将其吐出XML - > PHP - > HTML。
我目前正在一个大型FOR循环中生成一个表,并像这样回显结果:
echo '
<tr>
<td><strong>Qty Approved</strong></td>
<td><strong>' . $record['qty1 approved'][0] . '</strong></td>
<td><strong>' . $record['qty2 approved'][0] . '</strong></td>
<td><strong>' . $record['qty3 approved'][0] . '</strong></td>
<td><strong>' . $record['qty4 approved'][0] . '</strong></td>
<td><strong>' . $record['qty5 approved'][0] . '</strong></td>
<td><strong>' . $record['qty6 approved'][0] . '</strong></td>
<td><strong>' . $record['qty7 approved'][0] . '</strong></td>
<td><strong>' . $record['qty8 approved'][0] . '</strong></td>
<td><strong>' . $record['qty9 approved'][0] . '</strong></td>
<td><strong>' . $record['qty10 approved'][0] . '</strong></td>
<td><strong>' . $record['qty11 approved'][0] . '</strong></td>
<td>'. $approved_string . '</td>
</tr>
';
我想有条件地突出显示表中的一些值(这是我正在使用$ approved_string进行的操作),例如, qty5批准值&gt; 0然后将其变为红色,否则使其变为绿色。
我理解如何重新格式化表格以正确使用CSS,但我不知道是否在使用$ approved_string回复表之前预先计算值,或者如果我可以/应该放置一个我的echo语句中的if语句?
答案 0 :(得分:6)
重复任务 - &gt;做一个功能:
function highlight_record_value($record, $qty_index) {
$value = $record['qty'.$qty_index.' approved'][0];
if ($qty_index == 5) {
if ($value > 0)
$color = 'red';
else
$color = 'green';
return sprintf('<span style="color: %s;">%s</span>', $color, $value);
}
//anything else you want
return $value;
}
echo '
<tr>
<td><strong>Qty Approved</strong></td>
<td><strong>' . highlight_record_value($record, 1) . '</strong></td>
<td><strong>' . highlight_record_value($record, 2) . '</strong></td>
<td><strong>' . highlight_record_value($record, 3) . '</strong></td>
<td><strong>' . highlight_record_value($record, 4) . '</strong></td>
<td><strong>' . highlight_record_value($record, 5) . '</strong></td>
<td><strong>' . highlight_record_value($record, 6) . '</strong></td>
<td><strong>' . highlight_record_value($record, 7) . '</strong></td>
<td><strong>' . highlight_record_value($record, 8) . '</strong></td>
<td><strong>' . highlight_record_value($record, 9) . '</strong></td>
<td><strong>' . highlight_record_value($record, 10) . '</strong></td>
<td><strong>' . highlight_record_value($record, 11) . '</strong></td>
</tr>
';