-4

我的 PHP 代码有以下响应。

Array
(
[customer] => 402
[carat] => Array
    (
        [0] => 6
        [1] => 5
    )

[units] => Array
    (
        [0] => grams
        [1] => dwt
        [2] => dwt
    )

[weight] => Array
    (
        [0] => 5
        [1] => 3
        [2] => 6
    )

[our_payout] => Array
    (
        [0] => 15
        [1] => 9
        [2] => 60
    )

[sale_payout] => Array
    (
        [0] => 18
        [1] => 12
        [2] => 180
    )

[hidden_carat] => Array
    (
        [0] => 6
        [1] => 5
        [2] =>
    )

[hidden_unit] => Array
    (
        [0] => 1
        [1] => 2
        [2] => 2
    )

[carat_scale_price] => Array
    (
        [0] =>
        [1] =>
        [2] =>
    )

[sales_id] => Array
    (
        [0] =>
        [1] =>
        [2] =>
    )

[currency_rate_id] => Array
    (
        [0] =>
        [1] =>
        [2] =>
    )

[gold_price_id] => Array
    (
        [0] =>
        [1] =>
        [2] =>
    )

[taget_percentage] =>
[reference] => 0
[notes] =>
[unit] => 0
[customer_id] => 402
[total_items] => 2
[submit] =>
)

我想加入example [0] => grams等等[0] => 5 [0] => 16。我怎样才能做到这一点?

4

1 回答 1

1

我和史蒂夫在一起,我不确定你要什么。看起来您想转置该矩阵但仅用于某些键?假设您上面的原始数组位于变量 $arr 中,这可能会满足您的需求:

$lineItems = array();
$i = 0;
$allLineItemsHaveI = true;

while($allLineItemsHaveI) {
   $lineItems[$i] = array();
   foreach($arr as $key => $subArr) {
      if(array_key_exists($i, $subArr)) {
         $lineItems[$i][$key] = $subArr[$i];
      } else {
         $allLineItemsHaveI = false;
      }
   } 

   $i++;
}    

array_pop($lineItems);

这是输出:

Array
(
    [0] => Array
        (
            [carat] => 6
            [units] => grams
            [weight] => 5
            [our_payout] => 15
            [sale_payout] => 18
            [hidden_carat] => 6
        )

    [1] => Array
        (
            [carat] => 5
            [units] => dwt
            [weight] => 3
            [our_payout] => 9
            [sale_payout] => 12
            [hidden_carat] => 5
        )

)

另外,请查看:Transposing multidimensional arrays in PHP

于 2012-07-07T14:04:22.320 回答