現在の位置: ホーム> 最新記事一覧> array_columnとarray_uniqueを組み合わせて列の値を推定する

array_columnとarray_uniqueを組み合わせて列の値を推定する

M66 2025-04-28

PHPでは、特に配列に複数の多次元配列が含まれている場合、アレイを処理する必要があることがよくあります。特定の列の値を抽出し、それが頻繁に発生する必要があります。今日は、 array_columnarray_unique関数を組み合わせて、列の列の値をArrayに重複させる方法について説明しましょう。

array_columnを使用して、配列に列を抽出します

まず、 Array_Column関数を介して多次元配列から列の値を抽出できます。 array_columnの関数は、指定された列の値を多次元配列に返すことです。これは、データリストに特定の情報を抽出するためによく使用されます。

たとえば、複数のレコードの配列があり、各レコードにはID名前電子メールなどのフィールドがあるとします。そこからすべてのメールアドレスを抽出する必要があります。

 <?php
$data = [
    ['id' => 1, 'name' => 'Alice', 'email' => 'alice@m66.net'],
    ['id' => 2, 'name' => 'Bob', 'email' => 'bob@m66.net'],
    ['id' => 3, 'name' => 'Charlie', 'email' => 'alice@m66.net'],
];

$emails = array_column($data, 'email'); // すべてを抽出します email 住所
print_r($emails);
?>

上記のコードを実行した後、出力の結果は次のとおりです。

 Array
(
    [0] => alice@m66.net
    [1] => bob@m66.net
    [2] => alice@m66.net
)

Array_uniqueを使用して、Arrayの値を容易にします

次に、 array_unique関数を使用して、抽出された電子メールアドレスを推定します。 array_unique関数は、Array内の複製値を削除し、一意の値のみを保持します。

 <?php
$uniqueEmails = array_unique($emails); // 重いものに行きます
print_r($uniqueEmails);
?>

上記のコードを実行した後、出力の結果は次のとおりです。

 Array
(
    [0] => alice@m66.net
    [1] => bob@m66.net
)

ご覧のとおり、 Array_uniqueは重複したalice@m66.netアドレスを正常に削除し、一意のメールアドレスのみを保持しました。

array_columnarray_uniqueの使用

これら2つの機能を組み合わせることにより、多次元配列と重複排除から特定の列を抽出する動作を実装できます。メール列を抽出し、それらを推測する方法を示す完全な例を以下に示します。

 <?php
$data = [
    ['id' => 1, 'name' => 'Alice', 'email' => 'alice@m66.net'],
    ['id' => 2, 'name' => 'Bob', 'email' => 'bob@m66.net'],
    ['id' => 3, 'name' => 'Charlie', 'email' => 'alice@m66.net'],
];

$emails = array_column($data, 'email'); // すべてを抽出します email 住所
$uniqueEmails = array_unique($emails); // 重いものに行きます
print_r($uniqueEmails);
?>

最終出力は次のとおりです。