2011-09-26 15 views
95

私は、彼らが[0]を示しだから私がする必要があるすべてがリセットインデックスである私は今あなたが見ることができるように、それはPHPの再インデックス配列?

$myarray [0] a->1 
     [1] a-7 b->3 
     [3] a-8 b->6 
     [4] a-3 b->2 

ようになります[2]が不足しているいくつかのインデックスの設定を解除しなければならなかった配列を持っている - 3 [ ]。

+0

をお試しください/ 591094/how-do-you-reindex-an-array-in-php)ソリューションを共有しても、重複はありません。 –

答えて

212

使用array_values

$myarray = array_values($myarray); 
+1

私はそれが大好きです。 PHPができないことはありますか? (答えないでください) – pbarney

70
$myarray = array_values($myarray); 

array_values

+16

あなたの答えは受け入れられた答えよりも21秒早いです。 – Sonny

10

array_values仕事ん:

$myArray = array_values($myArray); 

また、他のいくつかのPHP関数は、すなわち、インデックスをリセットし、キーを保存しません。

2

これは、array_values()を使用する場合と比較して、最も単純な答えではないかもしれません。

http://stackoverflow.com/questions([どのようにPHPの配列のインデックスを再作成しますか?** **]これが最も確実の重複ではありません。この

$array = array(0 => 'string1', 2 => 'string2', 4 => 'string3', 5 => 'string4'); 
$arrays =$array; 
print_r($array); 
$array=array(); 
$i=0; 
    foreach($arrays as $k => $item) 
    { 
    $array[$i]=$item; 
     unset($arrays[$k]); 
     $i++; 

    } 

print_r($array); 

Demo