Php 从数组中删除重复项
我有一个多维数组,如下所示:Php 从数组中删除重复项,php,Php,我有一个多维数组,如下所示: Array ( [0] => Array ( [id] => 1 [genretitel] => actie [weekdag] => zaterdag [zaaltitel] => zaal 1 ) [1] => Array ( [id] =&g
Array
(
[0] => Array
(
[id] => 1
[genretitel] => actie
[weekdag] => zaterdag
[zaaltitel] => zaal 1
)
[1] => Array
(
[id] => 5
[genretitel] => actie
[weekdag] => zaterdag
[zaaltitel] => zaal 1
)
[2] => Array
(
[id] => 2
[genretitel] => animatie
[weekdag] => zaterdag
[zaaltitel] => zaal 1
)
[3] => Array
(
[id] => 6
[genretitel] => komedie
[weekdag] => zaterdag
[zaaltitel] => zaal 1
)
[4] => Array
(
[id] => 4
[genretitel] => animatie
[weekdag] => zaterdag
[zaaltitel] => zaal 2
)
[5] => Array
(
[id] => 3
[genretitel] => drama
[weekdag] => zaterdag
[zaaltitel] => zaal 2
)
[6] => Array
(
[id] => 8
[genretitel] => science fiction
[weekdag] => zaterdag
[zaaltitel] => zaal 2
)
[7] => Array
(
[id] => 11
[genretitel] => avontuur
[weekdag] => zaterdag
[zaaltitel] => zaal 2
)
[8] => Array
(
[id] => 15
[genretitel] => actie
[weekdag] => zaterdag
[zaaltitel] => zaal 3
)
[9] => Array
(
[id] => 13
[genretitel] => animatie
[weekdag] => zaterdag
[zaaltitel] => zaal 3
)
[10] => Array
(
[id] => 7
[genretitel] => documentaire
[weekdag] => zaterdag
[zaaltitel] => zaal 3
)
[11] => Array
(
[id] => 10
[genretitel] => science fiction
[weekdag] => zaterdag
[zaaltitel] => zaal 3
)
[12] => Array
(
[id] => 12
[genretitel] => actie
[weekdag] => zaterdag
[zaaltitel] => zaal 4
)
[13] => Array
(
[id] => 14
[genretitel] => animatie
[weekdag] => zaterdag
[zaaltitel] => zaal 4
)
[14] => Array
(
[id] => 9
[genretitel] => drama
[weekdag] => zaterdag
[zaaltitel] => zaal 4
)
[15] => Array
(
[id] => 16
[genretitel] => historisch
[weekdag] => zaterdag
[zaaltitel] => zaal 4
)
)
我想要的是相同的多维数组,但没有重复的数组。看起来您是从数据库中获取数据的。在这种情况下,我建议从select中删除ID,并使用类似DISTINCT的方法来避免从数据库中读取重复的内容 编辑:如果确实无法避免在选择中使用ID,请尝试以下操作:
// remove the id from all subarrays
foreach($array as $key => $value){
unset($array[$key]["id"]);
}
// remove all duplictes
$array = array_unique($array);
编辑:因此,如果您完全想将所有数据从数组中分离出来,只需在数组上迭代并生成三个数组,然后使用unique函数即可:
// create an array for each key
foreach($array as $value){
$genretitel[] = $value["genretitel"];
$weekdag[] = $value["weekdag"];
$zaaltitel[] = $value["zaaltitel"];
}
// remove the duplicates for thos arrays
$genretitel = array_unique($genretitel);
$weekdag= array_unique($weekdag);
$zaaltitel= array_unique($zaaltitel);
如果这不是您要问的问题,请在处理后添加所需数据的示例。我需要在Select语句中使用id。您是在Select语句中也需要id,还是仅在WHERE部分需要id?您错过了第3行的右括号。我想我的问题措辞有点错误。答案很好,但我删除了所有重复项,因此iat f“zaal4”是相同的,它将删除所有包含“zaal4”的数组,但如果其他值不同,我需要的是每个部分都单独查看,因此如果[zaaltitel]在其他数组中具有相同的值,它应该删除它们,但不是该数组的其余部分。请参阅我的编辑。您应该为我们提供一些“输出数据”的示例。