我想将我的阵列分成不同的任务;
例如:
$employee = [
"1010" => "110",
"1011" => "110",
"1015" => "110",
"1017" => "120",
"1018" => "120",
"1020" => "150",
"1050" => "150",
"1052" => "150",
"1055" => "150"
];
key
是employee_id
,value
是task
。
现在我想迭代这个数组并单独显示如下的任务:
**TASK 110**
1010 110
1011 110
1015 110
**TASK 120**
1017 120
1018 120
**TASK 150**
1020 150
1050 150
1052 150
1055 150
实现这一目标的最佳方法是什么:
foreach($employee as $empl => $task)
{
echo $empl . " " . $task . "<br>";
}
这显示了我所有的employee_id和任务。
我试图使用函数array_chunk
但是没有用,因为这只会分裂为静态大小。
答案 0 :(得分:2)
如果之前未订购数组,请再使用一个循环
foreach($employee as $empl => $task) {
$temp[$task][] = $empl;
}
foreach($temp as $task=> $list ) {
echo "**TASK $task**<br>";
foreach($list as $empl) {
echo $empl . " " . $task . "<br>";
}
}
答案 1 :(得分:0)
您可以为标题添加记录,然后在每一行上进行比较,并在更改后回显标题
$record = '';
foreach($employee as $empl => $task)
{
if ($taks !== $record) {
echo "**TASK " . $task . "**<br>";
$record = $taks;
}
echo $empl . " " . $task . "<br>";
}