2016-12-11 3 views
-1

Я создаю виртуальный магазин с корзиной ... Корзины массива в $_SESSION['carrinho'] и в этом есть:Массивов в PHP Проблемах

$_SESSION['carrinho'][$produto] = $preco; //Produto:Teste;Preço:20 
$_SESSION['carrinho'][$produto2] = $preco2; //Produto:Teste2;Preço:15 

И я пытаюсь разобрать этот массив в другом массиве :

array(
    "items" => array(
     array(
      "title" => "Multicolor kite", 
      "quantity" => 1, 
      "currency_id" => "BRL", 
      "unit_price" => 10.00 
     ) 
    ) 
); 

использовать на апи онлайн сервис для покупателей покупают товар

Помоги мне!

Извините за английский, я braziliam!

+3

Можете ли вы быть немного более конкретно? Какова ваша проблема? – michaeltintiuc

+0

Я пытаюсь преобразовать массив '$ _SESSION ['carrinho']' во второй массив, но не успех. – DaviDEV

ответ

1

Вы могли бы попробовать что-то вроде этого - iteratore по массиву и объединить элементы с заданными ключами

$mapping = ['Produto' => 'title', 'Preço' => 'unit_price']; 
$cart = [ 
    'items' => [] 
]; 

foreach ($_SESSION['carrinho'] as $product) { 
    $item = ['quantity' => 1, 'currency_id' => 'BRL']; 
    $splitted = explode(';', $product); 
    foreach ($splitted as $kv) { 
     list($key, $value) = explode(':', $kv); 
     $item[$mapping[$key]] = $value; 
    } 
    $cart['items'][] = $item; 
} 
+0

Это работает, но если есть только 1 пункт в carrinho – DaviDEV

+0

, я снова модифицировал код. – Philipp

+0

Работал, большое спасибо – DaviDEV

Смежные вопросы