I need to create REST API in PHP. I take JSON data from https://jsonplaceholder.typicode.com/ . Now I need to put all that data in table HTML. It is one array, inside with other 200 array. How can i create all row automaticly, without typing whole code by hands.
This is the code how i take data from https://jsonplaceholder.typicode.com/ :
<?php
$url = 'https://jsonplaceholder.typicode.com/todos/';
$cURL = curl_init();
curl_setopt($cURL, CURLOPT_URL, $url);
curl_setopt($cURL, CURLOPT_HTTPGET, true);
curl_setopt($cURL, CURLOPT_RETURNTRANSFER, true);
curl_setopt($cURL, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Accept: application/json'
));
$result = curl_exec($cURL);
curl_close($cURL);
$arrays = json_decode($result);
?>
I tried like this:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>JSON</title>
<link rel="shortcut icon" type="image/x-icon" href="icon.ico">
<meta name="description" content="HTML, PHP, JSON, REST API">
<style>table, th, td {border: 1px solid black;}</style>
</head>
<body>
<?php foreach ($arrays as $key => $value) { ?>
<div style="width:80px;border:2px solid black;height:20px;"> <?php echo 'User ID: ' . $value -> userId ?> </div><br />
<div style="width:50px;border:2px solid black;height:20px;"> <?php echo 'ID: ' . $value -> id ?> </div><br />
<div style="width:550px;border:2px solid black;height:20px;"> <?php echo 'Title: ' . $value -> title ?> </div><br />
<div style="width:90px;border:2px solid black;height:20px;"> <?php echo 'Completed: ' . $value -> completed ?> </div><br />
<br /> <?php } ?>
<table table style="width:100%"; table class="data-table">
<tr>
<th> User ID:</th> <th>ID:</th> <th>Title:</th><th>Completed</th>
</tr>
<tr>
<td><?php echo $value -> userId ?> </td> <td><?php echo $value -> id ?> </td> <td><?php echo $value -> title ?> </td><td><?php echo $value -> completed ?> </td>
</tr>
<tr>
<td><?php echo $value -> userId ?> </td> <td><?php echo $value -> id ?> </td> <td><?php echo $value -> title ?> </td><td><?php echo $value -> completed ?> </td>
</tr>
</table>
</body>
</html>
But i dont know to do it by once for all 200 row. Any suggestion?