PHP では、array_merge() 関数と array_unique() 関数を使用して、配列をマージし、重複データを削除できます。構文形式は、「array_unique(array_merge(array1,array2..))」です。
このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
php 削除する配列をマージします重複データ
<?php header("Content-type:text/html;charset=utf-8"); $arr1 = array( 'id' => 1234, 'url' => '//m.sbmmt.com/', 'language' => 'PHP', 'article' => '数组排序函数', 6 => '345' ); $arr2 = array( 'id' => 5678, 6 => 34, 8 => 26, 11 => '345' ); echo '<pre class="brush:php;toolbar:false">'; $arr = array_merge($arr1, $arr2); echo '将 $arr1 与 $arr2 合并,结果为:'."<br>"; print_r($arr); $array = array_unique($arr); echo '去除重复数据'."<br>"; print_r($array); ?>
出力:
将 $arr1 与 $arr2 合并,结果为: Array ( [id] => 5678 [url] => //m.sbmmt.com/ [language] => PHP [article] => 数组排序函数 [0] => 345 [1] => 34 [2] => 26 [3] => 345 ) 去除重复数据 Array ( [id] => 5678 [url] => //m.sbmmt.com/ [language] => PHP [article] => 数组排序函数 [0] => 345 [1] => 34 [2] => 26 )
説明:
1、array_merge() 関数
array_merge() この関数は、1 つまたは複数の配列のユニットをマージできます。つまり、1 つの配列内の値を前の配列に追加し、マージされた配列を返します。構文形式は次のとおりです:
array_merge($array1 [, $array2 [, $array3 ...]])
Parameter$ array1、$array2、...、$arrayn は、マージされる複数の配列です。
入力配列に同じ文字列キー名がある場合は、キー名の後の値で前の値が上書きされますが、配列に数値キー名が含まれている場合は、後の値で前の値は上書きされません。それらは追加されます。関数に配列パラメーターが 1 つだけあり、配列が数値的にインデックス付けされている場合、キー名は連続して再インデックス付けされます。
2. array_unique() 関数
array_unique -- 配列内の重複した値を削除します
構文形式は次のとおりです:
array array_unique ( array array )
array_unique () は配列を受け入れます。入力として受け取り、重複値のない新しい配列を返します。
キー名は変更されないことに注意してください。 array_unique() は、最初に値を文字列として並べ替え、次に各値の最初に見つかったキーのみを保持し、それ以降のキーをすべて無視します。これは、ソートされていない配列内で最初に出現した同じ値が保持されるという意味ではありません。
注: (string) $elem1 === (string) $elem2
の場合に限り、2 つのユニットは同じとみなされます。つまり、文字列の表現が同じ場合です。最初のユニットは保持されます。
推奨学習: 「PHP ビデオ チュートリアル 」
以上がPHPで配列をマージして重複データを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。