在php中将MongoDB中文档的子数组显示为表
在php中将MongoDB中文档的子数组显示为表,php,arrays,mongodb,Php,Arrays,Mongodb,我正在用PHP开发一个web应用程序,使用MongoDB作为数据库 目前,我在MongoDB数据库中有以下文档 { _id : 1, name:"Rahul", STD:"10th", marks:[ { subject:"English", mark_secured:"75", Grade:"B+" }, { subject:"Science", mark_secured:"
我正在用PHP开发一个web应用程序,使用MongoDB作为数据库 目前,我在MongoDB数据库中有以下文档
{
_id : 1,
name:"Rahul",
STD:"10th",
marks:[
{
subject:"English",
mark_secured:"75",
Grade:"B+"
},
{
subject:"Science",
mark_secured:"84",
Grade:"A"
},
{
subject:"Mathematics",
mark_secured:"65",
Grade:"B"
}
]
},
{
_id : 2,
name:"James",
STD:"9th",
marks:[
{
subject:"English",
mark_secured:"83",
Grade:"A"
},
{
subject:"Science",
mark_secured:"94",
Grade:"A+"
},
{
subject:"Mathematics",
mark_secured:"78",
Grade:"B+"
}
]
}
数据库名称:学生
收藏名称:stdMark
我在表格中以超链接的形式列出了学生和班级的名字。当我点击任何学生时,我想在另一页的表格中以以下格式列出该学生的分数
||=======================================||
|| Subject | Mark Secured | Grade ||
||--------------|---------------|--------||
|| English | 83 | A ||
|| Science | 94 | A+ ||
|| Mathematics | 78 | B+ ||
||=======================================||
请帮助我获取和显示子数组值,并在PHP中以表格格式显示它
Try this:
$id=$\u GET['student\u id']
$cursor = Student.stdMark.find({_id : $id})
$studentData = array();
foreach($cursor as $row){
foreach($row->marks as $item){
$result = array();
$result ['subject'] = $item->subject;
$result ['mark_secured'] = $item->mark_secured;
$result ['Grade'] = $item->Grade;
$studentData[] = $result;
}
}
echo json_encode($studentData);
到目前为止,您尝试了什么?现在我已经使用以下代码显示了sudent的名称…foreach($mark->find()as$item){echo'.$item->name'.;}我尝试使用以下代码访问标记。但是不起作用。foreach($mark->find(['name'=>'Rahul'])作为$item){echo'.$item->marks->mark_secured'.}