ホームページ  >  記事  >  バックエンド開発  >  PHP の array_intersect_ukey() 関数の使用方法の概要

PHP の array_intersect_ukey() 関数の使用方法の概要

WBOY
WBOYオリジナル
2023-06-26 22:42:161406ブラウズ

今日紹介したいのは、PHP で非常によく使われる配列関数、array_intersect_ukey() です。この関数は主に、2 つ以上の配列内のキー名を比較し、すべての入力配列に存在するすべてのキー名を含む新しい配列を返すために使用されます。 array_intersect_ukey() 関数には主に次の特徴があります。

  1. 配列のキー名のみを比較し、キー値は比較しません。
  2. この関数は、2 つ以上の配列を同時に比較できます。
  3. ユーザーは関数をコールバック関数としてカスタマイズして、キー名の比較ロジックを処理できます。

この関数の具体的な使い方を見てみましょう。

関数の使用方法

構文: array_intersect_ukey (array $array1, array $array2 [, array $...], callable $key_compare_func): array

Parameter説明:

array1, array2, ...: 比較する配列は 2 つ以上の配列にすることができます。

key_compare_func: キー名の比較に使用されるユーザー定義のコールバック関数。

戻り値: すべての入力配列に存在するすべてのキー名を含む配列を返します。

注:

  1. コールバック関数は、比較されるキー名である 2 つのパラメーターを受け取ります。
  2. この関数によって返される配列内のキー名の順序は、入力配列内の順序と異なる場合があります。
  3. この関数は、入力配列キー名の大文字と小文字を区別します。
  4. 入力配列に同じキー名のキーがある場合、返される配列には最後に表示されたキーのみが含まれます。

以下の例を見てください:

例 1:

$array1 = array('a' => 'php', 'b' => 'java', 'c' => 'python');

$array2 = array('a' => 'php', 'd' => 'ruby', 'e' => 'javascript');

function myfunction($key1, $key2)
{
    if ($key1 === $key2)
    {
        return 0;
    }
    else if ($key1 > $key2)
    {
        return 1;
    }
    else
    {
        return -1;
    }
}

print_r(array_intersect_ukey($array1, $array2, 'myfunction'));

出力結果:

Array
(
    [a] => php
)

説明: この例では、最初に定義します。 2 つの配列 $array1 と $array2 を作成し、配列のキー名を比較するコールバック関数 myfunction を定義します。この関数の機能は、$key1 と $key2 が等しい場合は 0 を返し、$key1 が $key2 より大きい場合は 1 を返し、$key1 が $key2 より小さい場合は -1 を返します。最後に、array_intersect_ukey() 関数を呼び出し、比較する 2 つの配列とコールバック関数の名前 myfunction を渡します。関数の出力結果は、両方の入力配列に存在するキー 'a' のみをキー名に含む新しい配列であり、キー値は 'php' です。

例 2:

$array1 = array('a' => 'php', 'B' => 'java', 'c' => 'python');

$array2 = array('a' => 'php', 'b' => 'ruby', 'e' => 'javascript');

print_r(array_intersect_ukey($array1, $array2));

出力結果:

Array
(
    [a] => php
)

説明: この例では、まず 2 つの配列 $array1 と $array2 を定義します。配列 $array1 に注目してください。中央のキー名「B」は大文字です。次に、array_intersect_ukey() 関数を呼び出します。この関数はデフォルトで大文字と小文字が区別されるため、両方の入力配列に存在するキー 'a' のみが返され、キー値は 'php' になります。

結論

array_intersect_ukey() 関数は、PHP で非常に一般的に使用される配列関数です。主に、2 つ以上の配列のキー名を比較し、新しい配列を返すために使用されます。キー名が含まれていますすべての入力配列に存在します。同時に、この関数を使用すると、ユーザーはキー名の比較ロジックを処理するコールバック関数をカスタマイズできます。実際の開発では、配列の比較や重複の削除などでよく使われる機能で、非常に便利で実用的です。

以上がPHP の array_intersect_ukey() 関数の使用方法の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。