[英]JSON - Structuring the data
本質上,我正在嘗試格式化以下內容:
我有一系列用戶,這些用戶是不同社區的一部分,每個社區都有一系列任務要完成,但社區中的某些任務僅與某些用戶有關。 像這樣:
Community 1
Members: Joe, James
Tasks: Task 1, Task 2, Task 3
Assigned: Task 1 -> Joe, Task 3 -> James
Community 2:
Members: James
Tasks: Talk 1, Task 14, Task 15
Assigned: Task 1 -> Joe, Task 14 -> James
所以本質上。 喬必須完成任務1,詹姆斯必須完成任務3。
我需要一個數組(可以將其編碼為json),用於存儲社區ID以及他們已完成的所有任務,但是應該易於訪問以獲取社區及其已完成的任務。
我有一個當前存在的社區列表,並且我想顯示所有已完成的任務(由特定用戶執行),具體取決於社區ID,此外,我還想從該社區中添加和刪除內容。 “任務”類別,因此需要一種輕松訪問這些成員的方法
到目前為止,我已經提出了以下建議:
$progress = array (
"communities" => array(
"id" => 1,
"tasks" => array(
1 => "completed",
2 => "completed"
),
"id" => 2,
"tasks" => array(
150 => "completed",
140 => "completed"
)
),
);
但是我不知道這是否是正確的數組樣式,因為我不知道當我需要添加/刪除或顯示社區剩余任務總數時會變得多么復雜
更新:
我正在使用的數組
$x = array(
1 => array(
1,
2,
3,
4,
),
2 => array(
3,
5,
6,
10
)
);
然后產生這種JSON:
{"1":[1,2,3,4],"2":[3,5,6,10]}
這是對的地方嗎? 我將能夠添加和刪除節點,以及為此添加頂層部分嗎?
代碼示例作為對您的評論的答復
$progress = array (
"communities" => array(
1 => array(
"tasks" => array(
1 => array("status" => "completed", "assigned_users" => array("James", "Joe")),
2 => array("status" => "pending", "assigned_users" => array("James"))
),
),
2 => array(
//Content of task2
)
)
);
使用這樣的擴展模型,您將能夠:
獲取第一個社區的任務1
echo $progress['communities'][1]['tasks'][1];
走社區集合
foreach ($progress['communities'] as $c) {
//Browse the tasks
foreach ($c['tasks'] as $t) {
var_dump($t);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.