Я расскажу о своем массиве ниже. Мне нужно удалить дублирующие ключи из массива, но также мне нужно, чтобы другие элементы были объединены. Я знаю, что это недостаточно чисто, чтобы понять, поэтому я объясню.Как удалить некоторые повторяющиеся элементы из многомерного массива
Это ожидаемый результат, который я хочу.
Main Cat Items 1 -> Categories 1 --> Sub Cat Items 1
Categories 1 --> Sub Cat Items 2
Categories 2 --> Sub Cat Items 3
Categories 3 --> Sub Cat Items 4
Main Cat Items 2 -> Categories 4 --> Sub Cat Items 5
, но из запроса я получаю что-то вроде этого.
Main Cat Items 1 -> Categories 1 --> Sub Cat Items 1
Main Cat Items 1 -> Categories 1 --> Sub Cat Items 2
Main Cat Items 1 -> Categories 2 --> Sub Cat Items 3
Main Cat Items 1 -> Categories 3 --> Sub Cat Items 4
Main Cat Items 2 -> Categories 4 --> Sub Cat Items 5
Вопрос не может уточнить, чтобы получить результат. поэтому я должен сделать это по php. это то, что я пробовал.
$input = array_map("unserialize", array_unique(array_map("serialize", $test)));
Использование этого ничего не изменилось. Я получил тот же массив с дубликатами.
$serialized = array_map('serialize', $test);
$unique = array_unique($serialized);
$tdsdsdf = array_intersect_key($test, $unique);
этот один тоже.
$unique = array();
foreach ($test as $key => $value) {
if (!array_key_exists($value['main_cat_id'], $unique)) {
$unique[$value['main_cat_id']] = $value;
}
}
при попытке устранить все дубликаты со всеми элементами.
это массив, который я получаю сразу после запроса db.
Array
(
[0] => Array
(
[main_cat_id] => 1
[main_cat_name] => main cat 1
[cat_id] => 1
[cat_name] => cat1 parent 1
[sub_cat_name] => sub 1 cat1 parent 1
)
[1] => Array
(
[main_cat_id] => 1
[main_cat_name] => main cat 1
[cat_id] => 1
[cat_name] => cat1 parent 1
[sub_cat_name] => sub 2 cat1 parent 1
)
[2] => Array
(
[main_cat_id] => 1
[main_cat_name] => main cat 1
[cat_id] => 4
[cat_name] => cat2 parent 1
[sub_cat_name] => sub 3 cat 4 parent 1
)
[3] => Array
(
[main_cat_id] => 1
[main_cat_name] => main cat 1
[cat_id] => 5
[cat_name] => cat3 parent 1
[sub_cat_name] =>
)
[4] => Array
(
[main_cat_id] => 2
[main_cat_name] => main cat 2
[cat_id] => 6
[cat_name] => cat 4 parent 2
[sub_cat_name] =>
)
[5] => Array
(
[main_cat_id] => 2
[main_cat_name] => main cat 2
[cat_id] => 7
[cat_name] => cat 5 parent 2
[sub_cat_name] =>
)
[6] => Array
(
[main_cat_id] => 3
[main_cat_name] => main cat 3
[cat_id] => 8
[cat_name] => cat 6 parent 3
[sub_cat_name] =>
)
)
PHP array_unique – Sekai
Простой array_unique не работает. :(Спасибо в любом случае. – Yasitha
По-прежнему не удалось решить какую-либо помощь? – Yasitha