方法 1: array_unique() 関数を使用して配列の重複を排除します。構文は「array_unique($arr)」です。2. PHP 配列キー名の反復不可能な機能を利用し、数値を 2 回反転する array_flip() 関数 グループのキー名とキー値の位置、構文は "array_flip(array_flip($arr))"; 3. PHP 配列キーの反復不可能な機能を利用する名前を指定するには、foreach ステートメントを使用して、配列のキー名とキー値の位置を 2 回反転します。
このチュートリアルの動作環境: Windows7 システム、PHP8 バージョン、DELL G3 コンピューター
php には、ファイルの重複要素を削除するための複数のメソッドが用意されています。配列。見てみましょう。
方法 1: array_unique() 関数を使用して配列の重複を排除する
array_unique() 関数を使用して重複した値を削除します。配列内で 。 2 つ以上の配列値が同じ場合、最初の値のみが保持され、他の値は削除されます。
注: 保持される配列は、最初の配列項目のキー タイプを保持します。
<?php header("content-type:text/html;charset=utf-8"); $array = array(1,2,3,3,4,2,3,5,6,4,5,7,8,9,10); var_dump($array); $result = array_unique($array); echo "删除重复元素后的数组"; //var_dump(array_values($filtered_array)); var_dump($result); ?>
方法 2: array_flip() 関数を使用する
array_flip() 関数を使用する配列内のキー名と、対応する関連キー値を反転/交換します。
配列内の2つの値が同じ場合、反転後も最後のキーと値が保持されるという機能があり、この機能を利用して間接的に配列の重複排除を実現します。 。
<?php header("content-type:text/html;charset=utf-8"); $a = array(1, 5, 2, 5, 1, 3, 2, 4, 5); // 输出原始数组 echo "原始数组 :"; var_dump($a); // 通过使用翻转键和值移除重复值 $a = array_flip($a); // 通过再次翻转键和值来恢复数组元素 $a = array_flip($a); // 重新排序数组键 $a = array_values($a); // 输出更新后的数组 echo "更新数组 :"; var_dump($a); ?>
方法 3: foreach ステートメントを使用して、配列のキー名とキー値の位置を 2 回逆転します
ステップ 1: 2 回反転したキー名とキー値を格納する 2 つの空の配列を定義します
$res1=[]; $res2=[];
ステップ 2: foreach ステートメントを使用して元の配列を走査し、元の配列のキー名とキー値をキー値とキー名として空の配列に割り当てます#
foreach ($array as $k1 => $v1){ //在每次循环中会将当前数组的值赋给 $v1,键名赋给 $k1 $res1[$v1]=$k1; }キー名とキー値が反転された配列が得られます #ステップ 3: foreach ステートメントを使用して反転配列を走査し、反転配列のキー名とキー値をキー値とキー名として別の空の配列に割り当てます
foreach ($res1 as $k2 => $v2){
$res2[$v2]=$k2;
}
<?php header("content-type:text/html;charset=utf-8"); function f($arr){ var_dump($arr); $res1=[]; $res2=[]; foreach($arr as $k1=>$v1){ $res1[$v1]=$k1; } foreach ($res1 as $k2 => $v2){ $res2[$v2]=$k2; } echo "去重后的数组:"; var_dump($res2); } $arr=array(1,2,3,4,5,4,3,2,1,0); f($arr); ?>
推奨学習: 「
PHP ビデオ チュートリアル以上がPHPで配列から重複した要素を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。