@kolomat

Как записать уникальные значения в массив?

Добрый вечер, подскажите по такому вопросу.
Я получаю список товаров по API и обрабатую его в цикле.
Выглядит так
SimpleXMLElement Object
(
    [Code] => 64883
    [Article] => SPR 100V
    [CategoryID] => 317
    [Subcategory] => Накопительные (мокрый ТЕН)
    [Name] => Водонагреватель Thermex SPR 100V
    [Vendor] => Thermex
    [EAN] => SimpleXMLElement Object
        (
            [0] =>  
        )

    [DDP] => 0
    [UCGFEA] => 8516101100
    [RRP] => 0
    [Availability] => z
    [PriceUSD] => 169.35
    [RRP_UAH] => 4267.2
    [Warranty] => 12
    [PriceType] => UAH
    [Price] => 4149.09
)
SimpleXMLElement Object
(
    [Code] => 147419
    [Article] => GCV 303512 B11 TSR
    [CategoryID] => 317
    [Subcategory] => Накопительные (мокрый ТЕН)
    [Name] => Водонагреватель Tesy BiLight Slim 30V (GCV 303512 B11 TSR)
    [Vendor] => Tesy
    [EAN] => 3800879113750
    [DDP] => 0
    [UCGFEA] => 8516108000
    [RRP] => 0
    [Availability] => z
    [PriceUSD] => 116.01
    [RRP_UAH] => 2871
    [Warranty] => 12
    [PriceType] => UAH
    [Price] => 2842.29
)

Как видно выше у каждого товара есть Vendor. Возможно ли как-то получить все эти вендоры, уникализировать их и записать в отдельный массив для последующией вставки в бд? Тоесть может быть 100 товаров одного и того же производителя, а мне надо для вставки в бд массив где будет только уникальные значения.
Заранее извеняюсь возможно неправильно поставленный вопрос, мало опыта пока. Буду рад любому совету. Спасибо
  • Вопрос задан
  • 100 просмотров
Решения вопроса 1
@NinjaNickName
Web разработчик
Если я правильно понял, вам нужен массив всех Vendor, что есть?

Тогда возможно что-то подобное:

update
foreach($products as $product){
     $vendors[] = (string) $product->Vendor;
}
$vendors = array_unique($vendors);
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@kolomat Автор вопроса
Тоесть по сути віглядит сейчас так
foreach($products as $product){
      $quantity = $product->Availability;
      if($quantity == 'z'){
        $quantity = 0;
      }else{
        $quantity = 100;
      }
    foreach($product->Vendor as $vendor){
        $vendors[] = $vendor;
    }

Тоесть основной массив с продуктами полученнній по API и уже в нем я делаю так как Вы и написали. Или єто не верный подход?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы