2016-12-10 4 views
0

私は多くのキーと値のペアを持つ配列を持っています。私はPHPの配列で1つのキーですべての値を取得したい。PHPの配列の1つのキーに値をマッピング

私は構文を次のように変更したい

$seat=[ (int) 0 => [ (int) 0 => 'A_1', (int) 1 => 'A_2', (int) 2 => 'A_3', (int) 3 => 'A_4' ], (int) 1 => [ (int) 0 => 'B_1', (int) 1 => 'B_2', (int) 2 => 'B_3' ] ] 

ように私は結果があります。

$seat=[ 
     (int) 0 => [ 
      (int) 0 => 'A_1', 
      (int) 1 => 'A_2', 
      (int) 2 => 'A_3', 
      (int) 3 => 'A_4'    
      (int) 4 => 'B_1', 
      (int) 5 => 'B_2', 
      (int) 6 => 'B_3' 
     ] 
    ] 

すべての感謝:

+0

使用 '配列_merge()'関数 – Naga

+0

私は2つのキー@Naga、array_merge(と一つだけの配列を持っている)が動作しないしません。.. –

+0

フォロー@Soni Vimalの答え... – Naga

答えて

1

をあなたは、単にこのようにそれを行うことができます。

function flattenArray($arr) { 
    $toflat = array($arr); 
    $res = array(); 

    while (($r = array_shift($toflat)) !== NULL) { 
     foreach ($r as $v) { 
      if (is_array($v)) { 
       $toflat[] = $v; 
      } else { 
       $res[] = $v; 
      } 
     } 
    } 

    return $res; 
} 

$newArray = array(flattenArray($array1)); // This will be your desired result 

OUTPUT:

// So for example, if you pass array to flatternArray($array) method: 

$array = array:2 [ 
    0 => array:3 [ 
    0 => 1 
    1 => 2 
    2 => 3 
    ] 
    1 => array:3 [ 
    0 => 4 
    1 => 5 
    2 => 6 
    ] 
] 

// then $newArray will results in: 

array:1 [ 
    0 => array:6 [ 
    0 => 1 
    1 => 2 
    2 => 3 
    3 => 4 
    4 => 5 
    5 => 6 
    ] 
] 

この情報がお役に立てば幸い!

2

は、この、単にarray_merge機能を使用して

<?php 

$result = array(); 

$seat=array( 
    "0" => array("0" => 'A_1',"1" => 'A_2',"2" => 'A_3',"3" => 'A_4'), 
    "1" => array("0" => 'B_1',"1" => 'B_2',"2" => 'B_3'), 
    "2" => array("0" => 'C_1',"1" => 'C_2',"2" => 'C_3')); 

for($i=0;$i<count($seat);$i++){ 
    $result = array_merge($result,$seat[$i]); 
} 
echo "<pre>";print_r($result); 

?> 

OUTPUT

Array 
(
    [0] => A_1 
    [1] => A_2 
    [2] => A_3 
    [3] => A_4 
    [4] => B_1 
    [5] => B_2 
    [6] => B_3 
    [7] => C_1 
    [8] => C_2 
    [9] => C_3 
) 
+0

あなたに役立つなら、答えを記入してください。 –

2

を試してみてください。

$result = call_user_func_array('array_merge', $seat); 

WORKING DEMO:http://phpio.net/s/1tx5

関連する問題