如何修复不在HTML表中填充的JSON数据

时间:2019-01-12 17:32:27

标签: php html json api

我构建了一个应用程序,该应用程序使用php输出json数据,显示谁在国会代表您。我创建了一个表来输出数据,但是它没有呈现,不确定错误在哪里?

<div class="data-table-wrapper">
<?php

$json_rep = 
file_get_contents('https://whoismyrepresentative.com/getall_mems.php?zip='.$_GET['zip'].'&output=json');
$rep_array = json_decode($json_rep);
var_dump($rep_array);

?>
   <table class="data-table">
   <thead>
    <tr>
     <td>Name</td>
      <td>Party</td>
      <td>State</td>
      <td>District</td>
      <td>Phone</td>
      <td>Office</td>
      <td>Link</td>


    </tr>
    <?php
    foreach($rep_array->results->Name->Party as $key=>$item){
    ?>
  <tr>
    <td><?php echo $item->name; ?></td>
    <td><?php echo $item->party; ?></td>
    <td><?php echo $item->state; ?></td>
    <td><?php echo $item->district; ?></td>
    <td><?php echo $item->phone; ?></td>
    <td><?php echo $item->office; ?></td>
   <td><?php echo $item->link; ?></td>




  </tr>
 <?

   }
 ?>
   </table>
       </div>
        </div>

是否应将键和值对呈现到表中?

1 个答案:

答案 0 :(得分:0)

使用$rep_array = json_decode($json_rep, true);返回关联数组。现在,您需要做的就是遍历数组以呈现表中的任何数据,如下所示:

<?php
$json_rep = file_get_contents('https://whoismyrepresentative.com/getall_mems.php?zip=10001&output=json');
$rep_array = json_decode($json_rep, true);

echo "<table>";
foreach ($rep_array['results'] as $key => $value) {
    foreach ($value as $key1 => $value1) {
        echo "<tr>";
        echo "<td>";
        echo $key1;
        echo "</td>";
        echo "<td>";
        echo $value1;
        echo "</td>";
        echo "</tr>";
    }
}
echo "</table>";