関数・クラス解説

array_intersect_key

version:PHP 5 >= 5.1.0, PHP 7 (公式)

キーを基準にして配列の共通項を計算する

公式リファレンス

書式

array_intersect_key ( array $array , array ...$arrays ) : array

説明

array_intersect_key() は、 array のエントリのうち、 その他のすべての引数の中に共通して存在するキーと一致するキーの値からなる配列を返します。

パラメータ

array
値を調べるもととなる配列。
arrays
キーを比較する対象となる配列。

返値

array のエントリのうち、 すべての引数に存在するキーのものを含む連想配列を返します。

サンプル

例1 array_intersect_key() の例

$array1 = array('blue'  => 1, 'red'  => 2, 'green'  => 3, 'purple' => 4); $array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan'   => 8); var_dump(array_intersect_key($array1, $array2));

上の例の出力は以下となります。

array(2) { ["blue"]=> int(1) ["green"]=> int(3) }

この例では、両方の配列に存在するキーが 'blue' と 'green' だけであり、それが返されていることが わかります。また、ふたつの配列の間で 'blue' と 'green' に対応する値が違うことにも注意しましょう。 それでも一致していると判定されるのは、ただキーだけがチェックされているからです。 返される値は array のものです。

二つの要素は、 (string) $elem1 === (string) $elem2 の場合のみ等しいとみなされます。言い換えると、 文字列表現が同じ場合となります。

参考

  • array_diff() - 配列の差を計算する
  • array_udiff() - データの比較にコールバック関数を用い、配列の差を計算する
  • array_diff_assoc() - 追加された添字の確認を含めて配列の差を計算する
  • array_diff_uassoc() - ユーザーが指定したコールバック関数を利用し、 追加された添字の確認を含めて配列の差を計算する
  • array_udiff_assoc() - データの比較にコールバック関数を用い、 追加された添字の確認を含めて配列の差を計算する
  • array_udiff_uassoc() - データと添字の比較にコールバック関数を用い、 追加された添字の確認を含めて配列の差を計算する
  • array_diff_key() - キーを基準にして配列の差を計算する
  • array_diff_ukey() - キーを基準にし、コールバック関数を用いて配列の差を計算する
  • array_intersect() - 配列の共通項を計算する
  • array_intersect_assoc() - 追加された添字の確認も含めて配列の共通項を確認する
  • array_intersect_uassoc() - 追加された添字の確認も含め、コールバック関数を用いて 配列の共通項を確認する
  • array_intersect_ukey() - キーを基準にし、コールバック関数を用いて 配列の共通項を計算する
  • ワード検索


    ※入力キーワードが、関数名・説明文・タグに含まれるものを検索

    関数名アルファベット別

    A B C D E F G H I J
    K L M N O P Q R S T
    U V W X Y Z _

    最終更新一覧

    stristr
     大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却

    stripslashes
     バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く

    stripos
     大文字小文字を区別せずに文字列が最初に現れる位置を取得する

    stripcslashes
     addcslashes() でクォートされた文字列をアンクォートする

    strip_tags
     文字列から HTML と PHP のタグを除去して返却

    strcspn
     指定した文字が最初に現れる位置を調べる

    strcoll
     ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する

    strcmp
     2つの文字列を比較し同じか(あるいは大小)を判定する

    strchr
     strstr() のエイリアス

    strcasecmp
     2つの文字列を比較(大文字小文字を区別せず同じとみなす)

    カテゴリー一覧

    PHP の振る舞いの変更
    音声フォーマットの操作
    認証サービス
    コマンドライン関連
    圧縮およびアーカイブ
    暗号
    データベース関連
    日付および時刻関連
    ファイルシステム
    自然言語および文字エンコーディング
    画像処理および作成
    メール関連
    数学
    テキスト以外の MIME 型
    プロセス制御
    その他の基本モジュール
    その他のサービス
    検索エンジン用の拡張モジュール
    サーバー固有のモジュール
    セッション関連
    テキスト処理
    変数・データ型関連
    ウェブサービス
    Windows 用のモジュール
    XML 操作
    GUI用の拡張モジュール