Web サイトとアプリケーションがより複雑になるにつれて、配列はより頻繁に、そしてより大量に使用されます。ただし、大量のデータを処理する場合、重複する要素が出現することがあります。これにより、プログラムのパフォーマンスが低下し、時間とリソースが無駄になります。したがって、同一の配列メンバーの削除は、PHP プログラマーが頻繁に対処する必要があるタスクになっています。
この記事では、PHP で配列から重複要素を削除する方法を紹介し、この記事を読んでいる人に役立つ実践的なヒントと例を提供します。
1. array_unique() 関数を使用して、配列内の同じ要素を削除します。
PHP で重複要素を削除する最も基本的な方法は、array_unique() 関数を使用することです。この関数は、配列からすべての重複を削除し、最初に出現したものだけを保持し、一意の要素のみを含む新しい配列を返します。
コード例:
$array = array(1, 2, 2, 3, 3, 3, 4, 5, 5);
$new_array = array_unique($array) ;
print_r($new_array);
出力:
Array
(
[0] => 1
[1] => 2
[3] => 3
[6] => 4
[7] => 5
)
2. foreach ループを使用して、次の同じ要素を削除します。配列
array_unique() 関数に加えて、PHP には同一の配列メンバーを削除する他のメソッドがあります。その中でも、foreach ループを使用すると、配列をより柔軟に処理でき、重複した要素が見つかった場合は削除できます。
コード例:
$array = array(1, 2, 2, 3, 3, 3, 4, 5, 5);
$new_array = array();
foreach($array as $value){
if(!in_array($value, $new_array)) {
$new_array[] = $value;
}
}
print_r( $new_array);
出力:
Array
(
[0] => 1
[1] => 2
[3] = > 3
[6] => 4
[7] => 5
)
上記のコードは、foreach ループを使用して配列を走査します。各反復中に、まず現在の値が配列内に存在するかどうかを確認します。存在しない場合、要素は新しい配列に追加されます。それ以外の場合、要素はスキップされ、ループが続行されます。
3. array_count_values() 関数を使用して、配列内の同じ要素を削除します。
PHP には、配列内の同じ要素を削除するのに役立つ別の便利な関数も用意されています。この関数は array_count_values() で、各配列要素の出現数を含む新しい配列を返します。
コード例:
$array = array(1, 2, 2, 3, 3, 3, 4, 5, 5);
$count_array = array_count_values($array) ;
$new_array = array();
foreach($count_array as $key => $value){
$new_array[] = $key;
}
print_r($new_array);
出力:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
)
上記のコードでは、まず array_count_values() 関数を使用してそれぞれの値を計算します。配列内の値、要素の出現数を調べてから、foreach ループを使用して新しい配列を反復処理し、各キーを新しい配列に追加します。
4. array_flip() 関数を使用して、配列内の同じ要素を削除します。
もう 1 つの便利な PHP 関数は、配列内のキー値を交換できる array_flip() です。 。これは、配列内の値が新しい配列のキーになり、元の配列のキーが新しい配列の値になることを意味します。この関数を使用すると、配列内の同じ要素を簡単に削除できます。
コード例:
$array = array(1, 2, 2, 3, 3, 3, 4, 5, 5);
$new_array = array_flip($array) ;
$new_array = array_flip($new_array);
print_r($new_array);
出力:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
)
以上がPHPで配列から重複した要素を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。