@ART4

Вывод в JSON в другой форме?

Добрый день, у меня код работает, но я хотел бы переделать его немного. В данный момент выводит JSON в таком порядке

5f2c8edac456e534297153.jpeg

Сам код:
<?php
header('Content-Type: text/html; charset=utf-8');
include 'DBConfig.php';

// Create connection
$link = mysqli_connect($HostName, $HostUser, $HostPass, $DatabaseName) or mysql_query("SET NAMES 'UTF-8'");

if ($link->connect_error) {
    die("Connection failed: " . $link->connect_error);
} 
mysqli_query($link, 'SET names UTF8');
$sql = "SELECT * FROM Delivery ORDER BY `id` DESC";

$result = $link->query($sql);

if ($result->num_rows >0) {
    while($row[] = $result->fetch_assoc()) {
        $tem = $row;
        $json = json_encode($tem, JSON_UNESCAPED_UNICODE);
    }
    } else {
        echo "No Results Found.";
    }
    echo $json;

    $link->close();
?>


А как его сделать по другому чтоб цепочка выглядела так?
[
category:"Пицца",[{"id":  "...", "name":  "..." и .......}, {"id":  "...", "name":  "..." и .......}, {"id":  "...", "name":  "..." и .......}],
category:"Салон красоты",[{"id":  "...", "name":  "..." и .......}, {"id":  "...", "name":  "..." и .......}, {"id":  "...", "name":  "..." и .......}]
]
  • Вопрос задан
  • 76 просмотров
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
этот код выводит только одну строку, последнюю. потому что там внутри while переменная $json перезаписывается на каждой итерации.

Переделать можно сперва сгруппировав массив по категории, а потом один раз перекодировать его в jsonю Сразу весь, а не по одной строчке.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы