我的网站有一个API,我想将它用于移动应用程序。但问题是这些API提供了大量不需要的数据,因此我想制作第三方API来过滤从第一个API获得的数据。
作为一个例子,我想过滤从第一个API获得的文章列表数据, 我做的是以下内容:
<?php
header('Content-type: application/json');
if (isset($_GET['kat'])) {
$url = $_GET['kat'];
} else {
$url = null;
}
$app_list = file_get_contents('http://localhost/api/articles/lists');
$app_list = json_decode($app_list, true);
foreach ($app_list as $app) {
$id = $app['id'];
$uid = $app['user_id'];
$cat = $app['category'];
$tgl = $app['created_date'];
$img = $app['image'];
$posttipe = $app['post_user_type'];
$komen = $app['count_comment'];
$likes = $app['count_likes'];
$c = substr($app['content'], 0, 100);
$content= $c . "...";
if ($cat == $url || !$url) {
$list = array("id" => $id, "user_id" => $uid, "category" => $cat, "image" => $img, "post_user_type" => $posttipe, "count_comment" => $komen, "count_likes" => $likes, "created_date" => $tgl, "content" => $content);
}
}
echo json_encode($list);
?>
所以我的问题是,我制作的API没有显示从API首先获得的所有文章列表。
我使用$_GET['kat'];
来过滤文章类别
我应该在脚本中编辑什么?
答案 0 :(得分:1)
您正在循环加载$list
$list = array("id" => $id, .....);
每次循环都在写$list
!
将此行更改为
$list[] = array("id" => $id, .....);
现在您将创建一个数组数组,其中包含循环数据的所有结果。