我很难正确地将数据显示到<td>
列中。我有表头和第一表列正常工作。我似乎无法全神贯注于如何正确显示其他数据。
答案 0 :(得分:0)
据我所知,这就是您填充简单的2x2数组的方式
foreach($rows as $row){
echo '<tr>';
// create first td (column name)
echo '<td>';
echo $month[$row];
echo '</td>';
// create the rest td (data value)
foreach($columns as $column){
echo '<td>';
echo $data[$row][$column];
echo '</td'>;
}
echo '</tr>';
}
您的行将作为列的城市名称和月份名称
所以我的解决办法
//start table
echo '<table>';
//first row
echo '<tr>';
//first header
echo '<th> Month </th>';
//rest of headers
for ($i = 0; $i < 4; $i++) {
echo '<th>' .$data['series'][$i]['name']. '</th>';
}
echo '</tr>';
//rest of rows
for ($x = 0; $x < 12; $x++){
echo '<tr>';
//first column
echo '</td>';
echo $data['categories'][$x];
echo '</td>';
//rest of columns
for ($i = 0; $i < 4; $i++) {
echo '<td>';
echo $data['series'][$i]['data'][$x];
echo('</td>');
}
echo '</tr>';
}
echo '</table>';
答案 1 :(得分:0)
您在语法上有很多错误。回声不需要括号。每个单元格都需要一个td标签。
使用的数组具有哪种格式也不清楚。取决于解决方案可能会出来。
仍然,这是一个建议。您可能需要根据阵列的组织对其进行修改。
<?php
//get json data
$data = json_decode($output, true);
//start table
echo '<table><tr><th> Month </th>';
//table headers
for ($i = 0; $i < 4; $i++)
{
echo '<th>' . $data['series'][$i]['name'] . '</th>';
}
echo '</tr>';
//column of months
$number = 0;
foreach ($data['categories'] as $value)
{
foreach($data['series'] as $inst)
{
$month_data = $month_data . "<td>" . $inst['data'][$number] . "</td>";
};
echo "<tr><td>$value</td>" . $month_data . "</tr>";
$number++;
unset($month_data);
};
echo '</table>';
?>
我称为$ month_data的部分将根据数组的组织方式而变化。要查看其组织方式,请使用以下代码:
<?php
echo '<pre>';
print_r($data);
echo '</pre>';
?>