JSON values into HTML table

前端 未结 3 966
青春惊慌失措
青春惊慌失措 2021-02-10 15:47

I have a table.html, data.php and json.csv within the same folder.

data.php is doing fopen(\"json.csv\",\"r\") to read f

相关标签:
3条回答
  • 2021-02-10 16:02

    You just need json_decode and some iteration

    http://php.net/manual/en/function.json-decode.php

    I'll show you a very simplistic way to do the PHP. You don't tell anything about the JSON, so I'm assuming its flat (not nested). I think you might want to alter the client side stuff too. Make txtJSON into an empty div, which will be filled with the output from the PHP.

    $file = $fopen("json.csv", 'r');
    $fileText = fread($file, filesize($file));
    $arr = json_decode($fileText, true); //i prefer associative array in this context
    
    echo "<table>";
    foreach($arr as $k=>$v)
        echo "<tr><td>$k</td><td>$v</td></tr>";
    echo "</table>";
    

    If your JSON is not flat and simple, what would you like the resulting table to look like?

    0 讨论(0)
  • 2021-02-10 16:20

    Here I have taken json data in to $json variable, and then use foreach loop to create table from json data.

    foreach ($data as $key => $jsons) {
     $table ='<table class="'.$jsons['class'].'" border="1">';
     foreach ($jsons as $rkey => $rvalue) {
        if($rkey=='head')
        {
            $table.='<tr>';
            foreach($rvalue as $rvv)
            {
                $table.='<th>'.$rvv.'</th>';
            }
            $table.='</tr>';
        }else
        if($rkey=='rows')
        {
            foreach($rvalue as $rvv)
            {
                $table.='<tr>';
                foreach($rvv as $rv)
                {
                    $table.='<td>'.$rv.'</td>';
                }
                $table.='</tr>';
            }
        }
     }
    }
    echo $table;
    ?>
    

    I have taken reference from http://www.tutsway.com/create-table-from-json.php

    0 讨论(0)
  • 2021-02-10 16:22

    You can use this library for converting Json to Standard HTML table: Json-To-Html-Table

    0 讨论(0)
提交回复
热议问题