我有一个看起来像这样的表:
Name | date1 | date2 | date3 | etc..
per1 | status1 | | status2 | etc
per4 | status2 | status3 | | etc
日期列的数量不固定。它们的值可以是状态,也可以为空。
我想分别访问每一行的日期列的数据并处理数据。
我想要实现的输出:
Name | field1 | status1 | status2 | etc..
per1 | value | #ofstat1 | #ofstat2 | etc
所以我得到了,访问问题开头的表:
$confirmed ="Confirmed";
$accepted ="Accepted";
while ($row = mysql_fetch_array($result)) {
$confirmed_cnt =0;
$accepted_cnt =0;
foreach ($row as $value) {
if (strcmp($value, $confirmed)) $confirmed_cnt++;
else if (strcmp($value, $accepted)) $accepted_cnt++;
}
print("<tr>");
print("<td>$row["Name"]</td>"); // name
print("<td>$confirmed</td>"); // confirmed
print("<td>$accepted</td>"); // accepted
print("</tr>");
}
据我所知,这应该可行,但由于某种原因,它连续 2 次通过每一列。
最佳答案
试试 mysql_fetch_assoc()
或 mysql_fetch_row()
。
mysql_fetch_array()
将每列返回两次:作为 [1] 和作为 ['fieldName']
关于php - 连续计算多个值,连续两次遍历列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13805391/