例:
コードをコピーします コードは次のとおりです:
$test_array=array(1,2,3,4,4,5,5,6); );
$test_array=array(1,2,3,4,4,5,5,6);
$test_array_unique($test_array);
でも、今のところ、 油断しないでください、まだ終わっていません。よく見ると、繰り返しの要素は削除されていますが、残りの要素のインデックスは変更されていないことがわかります。この場合、for ループを使用してこの配列要素を呼び出すと、エラーが発生します。 for ループはに基づいています。数は増加しており、ほとんどの人は配列のサイズを取得するために count($test_array_unique) を使用します。これにより、一部の要素が欠落します
コードをコピーします
コードは次のとおりです。 : $test_array=array(1,2,3,4,4,5,5,6); $test_array_unique=array_unique($test_array); test_array_unique);$i++)
{
echo $test_array_unique[$i]
}
$test_array=array(1,2,3,4,4,5,5,6); );
for($i=0; $i{
echo $test_array_unique[$i];
} この方法では、要素 6 は出力されません。 6 のインデックスは 8 であり、処理前の配列は です。 処理された配列のインデックスは変わりません。
解決策:
もちろん、ここでは比較的簡単だと思う方法を紹介しただけです。関数 array_values.array_values は配列の値を返し、その後にインデックスが続きます。この処理の後、厳密に増加するインデックスに従って新しい配列が形成され、for ループが使用されます。エッジを出力すれば、すべてOKです。
コードをコピーします
コードは次のとおりです:
$test_array=array(1,2,3,4,4,5,5,6);
$test_array_unique=array_values(array_unique($test_array) )); for($i=0;$i{ echo $test_array_unique[$i]
http://www.bkjia.com/PHPjc/319740.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/319740.html
技術記事例: 次のようにコードをコピーします。 $test_array_unique=array_unique($test_array); $test_array_unique (1、2、3、4、4、5、5、6);...