Array
(
[0] => Array
(
[0] => 4937
)
[1] => Array
(
[0] => 4937
[1] => 4941
)
[2] => Array
(
[0] => 4937
[1] => 5610
)
[3] => Array
(
[0] => 4937
[1] => 5610
[2] => 4943
)
[4] => Array
(
[0] => 108
)
)
每个数组都是一个类别列表,后跟其子类别和子子类别。我想只显示原始的数字模式。所以我想删除数组2因为数组模式已存在于数组3中,但我想保留数组1,因为4937后面的数字与数组3不同。最终结果应为此,
Array
(
[1] => Array
(
[0] => 4937
[1] => 4941
)
[3] => Array
(
[0] => 4937
[1] => 5610
[2] => 4943
)
[4] => Array
(
[0] => 108
)
)
答案 0 :(得分:2)
如果您的子类别没有多个父母,请尝试以下方法:
for($i = 1; $i < count($array); $i++){
end($array[$i-1]);
$k = key($array[$i-1]);
if ($array[$i-1][$k] == $array[$i][$k]) {
unset($array[$i-1]);
}
}
$array = array_values($array); // reindex array if you need