来自 mysql 结果的多维数组

发布于 2024-12-04 02:09:25 字数 954 浏览 0 评论 0原文

我遇到以下问题,无法实现所需的数组格式。 我有:

while ($ row = mysql_fetch_assoc ($ result))
{
$ alias = $ row ['Alias​​'];
$ read = (int) $ row ['Read'];
$ data [$ alias] [] = $ read;
}

我生成这个数组:

{"310-Amb":[23,24,24,25],
"310-Nev1":[5,5],
"310-Nev2":[6,6],
"310-Nev3":[5,5,4,4,5,4,5,5,5,4,4,5,5]}

我需要这种格式:

[{"name":"310-Amb","data":[23,24,24,25]},
{"name":"310-Nev1","data":[-74]},
{"name":"310-Nev2","data":[5]},
{"name":"310-Nev3","data":[5,6,6,5,5,4,4,5,4,5,5,5]}]

这是我的查询

SELECT read.Id, read.Fecha, read.Hora, productos.Producto, neveras.Alias, neveras.Min,
neveras.Max, read.Lectura FROM read Inner Join neveras ON read.Nevera_Id = neveras.Id 
Inner Join productos ON neveras.Producto = productos.Id WHERE Hora between
SUBTIME(CURTIME() , '03:00:00') And CURTIME() And read.$TipoClienteX = $IdX 
ORDER BY Alias, Hora Asc

谢谢大家的帮助

I have the following problem I can not achieve the desired format of an array.
I have:

while ($ row = mysql_fetch_assoc ($ result))
{
$ alias = $ row ['Alias​​'];
$ read = (int) $ row ['Read'];
$ data [$ alias] [] = $ read;
}

and I produce this array:

{"310-Amb":[23,24,24,25],
"310-Nev1":[5,5],
"310-Nev2":[6,6],
"310-Nev3":[5,5,4,4,5,4,5,5,5,4,4,5,5]}

and I need this format:

[{"name":"310-Amb","data":[23,24,24,25]},
{"name":"310-Nev1","data":[-74]},
{"name":"310-Nev2","data":[5]},
{"name":"310-Nev3","data":[5,6,6,5,5,4,4,5,4,5,5,5]}]

This is my Query

SELECT read.Id, read.Fecha, read.Hora, productos.Producto, neveras.Alias, neveras.Min,
neveras.Max, read.Lectura FROM read Inner Join neveras ON read.Nevera_Id = neveras.Id 
Inner Join productos ON neveras.Producto = productos.Id WHERE Hora between
SUBTIME(CURTIME() , '03:00:00') And CURTIME() And read.$TipoClienteX = $IdX 
ORDER BY Alias, Hora Asc

Thank you all for the help

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦里的微风 2024-12-11 02:09:25

像这样的事情应该可以帮助你到达那里。

while ($row = mysql_fetch_assoc ($result))
{
    $alias = $row['Alias​​'];
    $read = (int) $row['Read'];
    $data[] = array
    (
        'name' => $alias,
        'data' => $read,
    );
}

Something like this should get you there.

while ($row = mysql_fetch_assoc ($result))
{
    $alias = $row['Alias​​'];
    $read = (int) $row['Read'];
    $data[] = array
    (
        'name' => $alias,
        'data' => $read,
    );
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文