本质上,我试图将以下内容格式化:
我有一系列的用户,它们是不同社区的一部分,每个社区都有一系列的任务要完成,但是社区内部的一些任务只与一些用户相关。就像这样:
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 所以本质上。Joe必须完成Task 1,James必须完成Task 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]}这个地方对吗?我是否能够添加和删除节点,以及添加顶层部分?
发布于 2015-08-07 14:33:56
代码示例作为对您的评论的答复
$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);
}
}https://stackoverflow.com/questions/31877980
复制相似问题