我有這個結果來自MYSQL; content_groups已經由TopicId訂購的MYSQL返回。PHP循環和重建數組按值(主題)輸出JSON
Array
(
[0] => Array
(
[ContentGroupId] => 1
[TopicId] => 1
[TopicName] => Meditations
[ContentGroupName] => Guided Meditations 1
)
[1] => Array
(
[ContentGroupId] => 2
[TopicId] => 1
[TopicName] => Meditations
[ContentGroupName] => Guided Meditations 2
)
[2] => Array
(
[ContentGroupId] => 3
[TopicId] => 1
[TopicName] => Meditations
[ContentGroupName] => Guided Meditations 3
)
[3] => Array
(
[ContentGroupId] => 4
[TopicId] => 2
[TopicName] => Hypnosis
[ContentGroupName] => Hypnosis Programs 1
)
[4] => Array
(
[ContentGroupId] => 5
[TopicId] => 2
[TopicName] => Hypnosis
[ContentGroupName] => Hypnosis Programs 2
)
[5] => Array
(
[ContentGroupId] => 6
[TopicId] => 3
[TopicName] => Mindfulness
[ContentGroupName] => Mindfulness Guides 1
)
[6] => Array
(
[ContentGroupId] => 7
[TopicId] => 3
[TopicName] => Mindfulness
[ContentGroupName] => Mindfulness Guides 2
)
[7] => Array
(
[ContentGroupId] => 8
[TopicId] => 3
[TopicName] => Mindfulness
[ContentGroupName] => Mindfulness Guides 3
)
我通過這個嘗試循環,所以我可以按主題和JSON編碼組,看起來像這樣:
topics: [
{
TopicId: 1,
TopicName: Mediations,
content_groups: [
{
ContentGroupId: 1,
TopicId: 1,
TopicName: "Mediations",
ContentGroupName: "Guided Meditations 1"
},
{
ContentGroupId: 2,
TopicId: 1,
TopicName: "Mediations",
ContentGroupName: "Guided Meditations 2"
},
{
ContentGroupId: 3,
TopicId: 1,
TopicName: "Mediations",
ContentGroupName: "Guided Meditations 3"
}
]
},
{
TopicId: 2,
TopicName: Hypnosis,
content_groups: [
{
ContentGroupId: 4,
TopicId: 2,
TopicName: "Hypnosis",
ContentGroupName: "Hypnosis Programs 1"
},
{
ContentGroupId: 5,
TopicId: 2,
TopicName: "Hypnosis",
ContentGroupName: "Hypnosis Programs 2"
}
]
},
{
TopicId: 3,
TopicName: Mindfulness,
content_groups: [
{
ContentGroupId: 6,
TopicId: 3,
TopicName: "Hypnosis",
ContentGroupName: "Mindfulness Guides 1"
},
{
ContentGroupId: 7,
TopicId: 3,
TopicName: "Hypnosis",
ContentGroupName: "Mindfulness Guides 2"
},
{
ContentGroupId: 8,
TopicId: 3,
TopicName: "Hypnosis",
ContentGroupName: "Mindfulness Guides 3"
}
]
}
]
我原來只是做了一個獨立的MYSQL電話,因爲我通過每個主題環以獲得相應的內容組,但隨着主題的增長,這看起來效率低下,因爲我可以更輕鬆地進行一次SQL調用以獲取所有需要的內容組,然後通過相應的主題重新組織數組,但我正在努力弄清楚如何輸出以獲得期望的最終結果。
謝謝@mickmackusa我正在敲我的頭......這似乎是一個非常乾淨的方式來做到這一點;比我一直試圖去做的代碼少得多。 –