array_unique関数とは?
array_unique関数は、PHPで配列の重複した値を削除するための関数です。
array_unique関数の概要
array_unique関数の基本的な書式は、次のとおりです。
PHP
array array_unique(array $array);
array $array
:重複した値を削除する配列
array_unique関数は、配列の値をソートして、重複した値を削除した新しい配列を返します。
array_unique関数の書き方
array_unique関数の書き方は、次のとおりです。
- 重複した値を削除する配列を用意します。
- array_unique関数を呼び出して、重複した値を削除した新しい配列を取得します。
PHP
// 重複した値を含む配列の用意
$array = array("山田 太郎", "佐藤 花子", "山田 太郎", "鈴木 一郎");
// 重複した値を削除する
$new_array = array_unique($array);
// 重複した値が削除された配列の確認
print_r($new_array);
このコードを実行すると、次の出力になります。
Array
(
[0] => 山田 太郎
[1] => 佐藤 花子
[2] => 鈴木 一郎
)
array_unique関数の作成・使用方法
array_unique関数は、次の2つの方法で使用できます。
- 変数に代入して使用する
- 直接出力する
PHP
// 変数に代入して使用する
$array = array("山田 太郎", "佐藤 花子", "山田 太郎", "鈴木 一郎");
$new_array = array_unique($array);
// 直接出力する
$array = array("山田 太郎", "佐藤 花子", "山田 太郎", "鈴木 一郎");
print_r(array_unique($array));
array_unique関数のスクリプトサンプル
次のスクリプトは、array_unique関数を使用して、さまざまなデータの重複を削除しています。
PHP
// 文字列の重複を削除
$array = array("山田 太郎", "佐藤 花子", "山田 太郎", "鈴木 一郎");
$new_array = array_unique($array);
print_r($new_array);
// 数値の重複を削除
$array = array(10, 20, 30, 10, 20);
$new_array = array_unique($array);
print_r($new_array);
// 配列の重複を削除
$array = array(array("山田 太郎", "佐藤 花子"), array("鈴木 一郎", "田中 花子"));
$new_array = array_unique($array);
print_r($new_array);
このコードを実行すると、次の出力になります。
Array
(
[0] => 山田 太郎
[1] => 佐藤 花子
[2] => 鈴木 一郎
)
Array
(
[0] => 10
[1] => 20
[2] => 30
)
Array
(
[0] => Array
(
[0] => 山田 太郎
[1] => 佐藤 花子
)
[1] => Array
(
[0] => 鈴木 一郎
[1] => 田中 花子
)
)
array_unique関数特有の事柄・注意点
array_unique関数は、PHPで配列の重複した値を削除するための便利な関数です。PHPの初心者でも使いやすいので、ぜひ覚えておきましょう。
array_unique関数を使用する際の注意点は、次のとおりです。
- array_unique関数は、配列のキーを保持しません。
- 配列の要素がオブジェクトの場合、オブジェクトの値が重複している場合は、重複したオブジェクトが削除されません。
これらの注意点を踏まえて、array_unique関数を活用してください。