【发布时间】:2015-06-29 14:44:23
【问题描述】:
我有一个具有以下结构的表。目前共有 9 名学生就读于 3 个班级(01、16 和 52 班),每个班级招收 3 名学生。
studentcode | classcode
-------------------------
D3kcIvyp | 01
DdIhBc | 01
2vx0KV | 01
9p1PxWCV | 52
RnmfH1WE | 52
MSTBEv | 52
Yp4J3o | 16
fWQ5Oo | 16
6sxw3u | 16
这是包含所有当前类的数组:
$classes_array = array ( [0] => 01 [1] => 52 [2] => 16 )
使用这个数组,我想通过 mysql 表创建一个多维数组,其中 classcodes 用作第一级键:
Array
(
[01] => Array
(
[0] => D3kcIvyp
[1] => DdIhBc
[2] => 2vx0KV
)
[52] => Array
(
[0] => 9p1PxWCV
[1] => RnmfH1WE
[2] => MSTBEv
)
[16] => Array
(
[0] => Yp4J3o
[1] => fWQ5Oo
[2] => 6sxw3u
)
)
foreach ($classes_array as $key => $value)
{
$sql = "SELECT studentcode FROM table WHERE classcode = '$classes_array[$key]'";
$result = mysql_query($sql) or die();
while($data = mysql_fetch_array($result))
{
$studentcodes_array[] = $data['studentcode'];
}
foreach ($studentcodes_array as $studentcodeskey => $studentcodesvalue)
{
$multid_array[$value][] = $studentcodesvalue;
}
}
使用上面的代码,不幸的是我没有得到我想要的数组。我得到了这个:
Array
(
[01] => Array
(
[0] => D3kcIvyp
[1] => DdIhBc
[2] => 2vx0KV
)
[52] => Array
(
[0] => D3kcIvyp
[1] => DdIhBc
[2] => 2vx0KV
[3] => 9p1PxWCV
[4] => RnmfH1WE
[5] => MSTBEv
)
[16] => Array
(
[0] => D3kcIvyp
[1] => DdIhBc
[2] => 2vx0KV
[3] => 9p1PxWCV
[4] => RnmfH1WE
[5] => MSTBEv
[6] => Yp4J3o
[7] => fWQ5Oo
[8] => 6sxw3u
)
)
我的代码有什么问题?有人可以帮我解决这个问题吗?
【问题讨论】:
-
这肯定是一个重复的问题。在“相关”下查看屏幕右侧
-
嗨 Drew,很抱歉,我已经检查了一些问题.. 但找不到任何问题的答案。
-
很公平,谢谢 :)
标签: php mysql arrays multidimensional-array