例:
コードをコピー コードは次のとおりです:
$test_array=array(1,2,3,4) ,4,5 ,5,6);
$test_array_unique=array_unique($test_array);
$test_array=array(1,2,3,4,4,5); ,5,6 );
$test_array_unique=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);
for ($i=0;$i
echo $test_array_unique[$i]
}
$ test_array=array(1,2,3 ,4,4,5,5,6);
$test_array_unique=array_unique($test_array);
for($i=0;$i
echo $test_array_unique[$i];
}
この方法では、要素 6 は出力されません。これは、6 のインデックスが 8 であるためです。処理前の配列と処理後の配列インデックスは変更されません。
解決策:
コードをコピー コードは次のとおりです:
$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];
}