Итак, у меня есть этот простой код для приема каждого продукта, поиска этого типа и определения категории, отображаемой на моем сайте.Предотвращение нескольких записей в массиве
public function get_categories()
{
$products = $this->get_products();
$categories = array();
$i = '-1';
foreach($products as $product)
{
$name = ucfirst(strtolower($this->ci->inflect->pluralize($product['type'])));
if(!in_array($name, $categories))
{
$i++;
$categories[$i] = array(
'name' => $name,
'type' => strtolower($product['type']),
);
}
}
return $categories;
}
Теперь она работает просто отлично, пока я не должен был пройти type
вместе с name
так что теперь я делаю многомерный массив.
Теперь очевидно, что name
никогда не находится в массиве categories
, потому что его внутри другого массива в этом.
Как определить, существует ли name
в массивах внутри массива categories
?
Почему вы не использовать '$ name' как ключ массива вместо некоторого числа? Дал бы вам один размерный массив, и вы всегда знаете, установлено ли '$ categories [$ name]' или нет. – kero
Вау, я слишком долго работал над этим ... Спасибо. – user3968645