2

我有一个包含以下列的数组:

  • 任务
  • 地位

我想打印一个显示任务列表的表格,而不是状态列。相反,对于状态 = 0 的任务,我想添加一个标签<del>以使已完成的任务被划掉。这是我当前的代码:

foreach ($row as $key => $val){
if ($key != 'Status') print "<td>$val</td>";
else if ($val == '0') print "<td><del>$val</del></td>";
}

这似乎是正确的,但是当我打印出来时,它会打印带有<del>标签的所有任务。所以基本上每次都运行“else”子句。

这是 var_dump($row):

array
  'Task' => string 'Task A' (length=6)
  'Status' => string '3' (length=1)
array
  'Task' => string 'Task B' (length=6)
  'Status' => string '0' (length=1)
4

1 回答 1

0

与其作为键/值对进行迭代,不如尝试仅使用元素本身进行迭代并检查各个索引:

foreach ($row as $task) {
    $value = ($task['Status'] == '0') ? '<del>' . $task['Task'] . '</del>' : $task['Task'];
    echo '<td>' . $value . '</td>';
}
于 2012-11-04T03:00:15.277 回答