1
resposta

Duvida com elementos repetidos em array

Eu estou querendo colocar o resultado desse código

      foreach(  $woocommerce->cart->get_cart() as $cart_item ){
        $cart_item = array(
          "ProductName" => $product_id = $cart_item['product_id'],
          "UnitPrice" => $line_total = $cart_item['line_total'],
          "Quantity" => $quantity = $cart_item['quantity']
        );

        var_dump($cart_item);
        echo "<br>";
      }

Que é a variavel "$cart_item", dentro de um array:

$array = array(
        "MerchantOrderId" => $orderId,
        "TotalOrderAmount" =>$_POST["subtotal"],,
        "TransactionAmount" => $_POST["total"],,
        "Currency" => "BRL",
        ),
        "Billing" => array(
          "Street" => $_POST["billing_address_1"],
          "Number" => $_POST["billing_number"],
          "Neighborhood" => $_POST["billing_neighborhood"],
        ),
        "Customer" => array(
          "MerchantCustomerId" => $_POST["billing_cpf"],
          "FirstName" => $_POST["billing_first_name"],
          "LastName" => $_POST["billing_last_name"],
          "BirthDate" => $_POST["billing_birthdate"],
          "Email" => $_POST["billing_email"],
        ),
        "CartItems" => array_push($cart_item)

eu tentei usar o array_push() mas não deu certo. O que está acontecendo é que cada vez que o foreach roda, o valor do "CartItems" é subistituido. Então so aparece o ultimo item do carrinho. Como posso resolver isso?

1 resposta

Já tentou dessa forma?

$cart_item[] = [ "ProductName" => $product_id = $cart_item['product_id'], "UnitPrice" => $line_total = $cart_item['line_total'], "Quantity" => $quantity = $cart_item['quantity'] ];