在url中传递变量以获得特定的JSON输出


Pass variables in url to get specific JSON output

我正在尝试创建一个api,我目前正在尝试将变量附加到url,以在JSON输出中返回特定数据。。我当前可以显示表的所有内容。如有任何建议,不胜感激。。请参阅下面的代码。。。

$connection = @mysqli_connect($server, $user, $password, $bd);
if( ! $connection ) die( "Error ".mysqli_connect_error() );
$sql = "SELECT * FROM posts";
$result = mysqli_query($connection, $sql);
$array_post = array();

while($data = mysqli_fetch_assoc($result)){
    $array_post[] = $data;
}
echo json_encode($array_post);

您可能是指POST或GET请求之后的api响应?我说得对吗?

如果是,那么你可以这样做。。。

    $response = $array_post;
    http_response_code(200);
    print json_encode($response);

您需要一个流来输出JSON数据,您可以通过HTTP_response_code($code)函数设置HTTP状态代码,然后打印响应。

有一些包可以处理api请求和响应。我建议你看看Curl或者更好的GuzzleHttp。

希望能有所帮助。

您可以将SQL查询返回的特定值存储到类似的数组键中

while($data = mysqli_fetch_assoc($result)){
    $array_post['key2'][] = $data['key2'];
    $array_post['key2'][] = $data['key2'];
}
echo json_encode($array_post);

只使用那些您需要在URL中传递的值。如果你需要所有的记录,那么你的代码是正确的。如果您正在考虑一些记录,请将查询更改为如CCD_ 1。因为有时它会影响执行SQL查询的性能。