我构建了一个多维数组来存储一些值,并且能够删除重复项。
我现在想要做的是构建一个 for 或 foreach 循环来通过键回显子数组值,例如 [0]、[1] 等,因为它似乎已经将它们放在了对我来说很好的行中。Print_r 完全按照我的需要显示数据,但我需要遍历为每个集合构建一些表单按钮。
我使用我发现的一个函数从多维数组生成唯一条目,如下所示:
function multi_unique($array) {
foreach ($array as $k=>$na)
$new[$k] = serialize($na);
$uniq = array_unique($new);
foreach($uniq as $k=>$ser)
$new1[$k] = unserialize($ser);
return ($new1);
}
初始化数组:
$unique_array = array(
'username'=>array(),
'user_id'=>array(),
'weeknumber'=>array()
);
在 while 循环中构建数组:
while($row = mysql_fetch_array($query))
{
$unique_array[] = array('username'=>$row['username'], 'user_id'=>$row['user_id'], 'weeknumber'=>$row['weeknumber']);
}
最后,我需要确保数组值是唯一的(由于数据库和查询限制,存在重复条目),在 while 循环之后我有:
print_r(multi_unique($unique_array));
它在带有 print_r 的页面上产生这样的输出,从数据库中动态生成,并删除了重复的条目:
Array ( [username] => Array ( ) [0] => Array ( [username] => username1 [user_id] => 58 [weeknumber] => 1 ) [1] => Array ( [username] => username2 [user_id] => 21 [weeknumber] => 1 ) [3] => Array ( [username] => username3 [user_id] => 24 [weeknumber] => 1 )
就像我说的,一切都顺利地进入数组,我只需要一个好方法来再次拉出一切,我需要用户名、user_id 和 weeknumber 在循环中回显。
任何帮助表示赞赏!
是的,我知道 mysql 已被弃用,但现在改变它为时已晚 + 我正在处理其他人的现有代码。