2016-11-11 20 views
0

のインデックス値を削除するにはどうすれば多次元配列

$my_array = Array 
(
    [0] => Array 
     (
      [0] => rock 
     ) 

    [1] => Array 
     (
      [1] => James 
     ) 

    [2] => Array 
     (
      [2] => John 
     ) 
) 

ような配列を持っていると私は、私はこのフォームで配列をこの

array([0]=>rock [1]=>James [2]=> john); 

ような配列を得ることができますしたいです。私を助けてください。ここで

+0

は、なぜあなたはこのタイプのアレイを作成していますか? – KinjalMistry

+0

アレイは本当にこのように見えますか?私はJamesとJohnの両方に0のインデックスがあると思います。それらが0の場合、[array_column()](http://php.net/array_column)は必要なものを与えるはずです。 –

答えて

0

がソリューションです:

$newArray = []; 
foreach ($data as $value) { 
    $newArray[] = $value[0]; 
} 

$ NEWARRAYは

1

あなたの配列の子供は、親配列と同じキーが含まれているので、あなたは、両方に同じキーを使用する必要があり、新たな配列結果を開催します!

$my_array = array(
     array('0' => 'rock'), 
     array('1' => 'James'), 
     array('2' => 'John') 
); 

これは動作します:

$n_a = []; 
foreach($my_array $k => $ma) { 
    $n_a[$k] = $ma[$k]; //here is the problem 
} 
print_r($n_a); 

$n_aは、最終的な配列が含まれています。あなたは、単一のコード行でそれを達成することができ、この

$my_array = array 
(
array 
    (
     '0' => 'rock' 
    ) 
, 
array 
    (
     '1' => 'James' 
    ) 
, 
array 
    (
     '2' => 'John' 
    ) 
); 
print_r($my_array); 

$newArray = []; 
foreach ($my_array as $key => $value) { 
    $newArray[] = $value[$key]; 
} 
print_r($newArray);