0

以下のような投稿配列があります。

[quantity] => Array
    (
        [5] => 10
        [23] => 20
    )

[price] => Array
    (
        [5] => 100.00 $
        [23] => 200.00 $
    )

[amount] => Array
    (
        [5] => 1,000.00 $  
        [23] => 4,000.00 $ 
    )

5 と 23 は製品の ID です。そして、私はそれを次のように変換する必要があります:

[5]  => Array
     (
        [quantity] => 10
        [price]    => 100.00 $
        [amount]   => 1,000.00 USD
     )
[23] = => Array
     (
        [quantity] => 20
        [price]    => 200.00 $
        [amount]   => 4,000.00 USD
     )

mysql挿入の準備ができるように、これを効率的に達成するにはどうすればよいですか?

4

2 に答える 2

0
$quantity = array(5=>10,23=>20);
$price    = array(5=>'100.00$',23=>'200.00$');
$amount   = array(5=>'1000.00$',23=>'4000.00$');

$newData  = array_map(null, $quantity, $price,$amount);
$newKeys  = array_keys($quantity);
$data     = array_combine($newKeys,$newData);

echo('<pre>');
print_r($data);

ただし、配列は順序付けする必要があります!</ p>

于 2012-04-12T08:52:59.040 に答える
0

それらのアレイの1つをウォークスルーし、IDを取得して再構築します。

例:

// YOUR DATA
$quantity = array();
$price = array();
$amount = array();

// NEW ARRAY
$array = array();

foreach ($quantity as $id => $itemQty) {
   $itemPrice = $price[$id];
   $itemAmount = $amount[$id];
   $array[$id] = array("quantity" => $itemQty, "amount" => $itemAmount, "price" => $itemPrice);
}

これで、$array内のデータが必要に応じて並べ替えられました。

于 2012-04-12T07:12:29.490 に答える