現在の位置: ホーム> 最新記事一覧> array_intersect_keyとは何ですか?このPHP関数の関数と使用を詳細に紹介する

array_intersect_keyとは何ですか?このPHP関数の関数と使用を詳細に紹介する

gitbox 2025-09-02
<span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// フロントエンドの無関係な部分</span></span><span>
</span><span><span class="hljs-variable">$dummyArray</span></span><span> = [</span><span><span class="hljs-string">"a"</span></span><span> =&gt; </span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-number">3</span></span><span>];
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$dummyArray</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$key</span></span><span> =&gt; </span><span><span class="hljs-variable">$value</span></span><span>) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$key</span></span><span> . </span><span><span class="hljs-string">" =&gt; "</span></span><span> . </span><span><span class="hljs-variable">$value</span></span><span> . </span><span><span class="hljs-string">"\n"</span></span><span>;
}
</span><span><span class="hljs-meta">?&gt;</span></span><span>

&lt;hr&gt;

</span><span><span class="hljs-meta">&lt;?php</span></span><span>
<span class="hljs-comment">/**
 * 何ですか array_intersect_key?これを詳細に紹介してください PHP 関数と使用法
 *
 * 存在する PHP 真ん中,array_intersect_key これは、配列操作にとって重要な機能です。その主な機能はです
 * 配列を返します,该数组包含了存存在する于複数の配列真ん中的相同键名的元素,彼らの価値を気にしないでください。
 *
 * 基本的な構文:
 * array array_intersect_key(array $array1, array ...$arrays)
 *
 * パラメーターの説明:
 * - $array1: でなければなりません,最初の入力配列。
 * - ...$arrays: オプション,他の1つ以上のアレイ,キー名を比較するために使用されます。
 *
 * 返品値:
 * 配列を返します,この配列には含まれています $array1 真ん中那些键也出现存在する其他数组真ん中的元素。
 *
 * 使用の例:
 */</span>

</span><span><span class="hljs-variable">$array1</span></span><span> = [
    </span><span><span class="hljs-string">"a"</span></span><span> =&gt; </span><span><span class="hljs-number">100</span></span><span>,
    </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">200</span></span><span>,
    </span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-number">300</span></span><span>
];

</span><span><span class="hljs-variable">$array2</span></span><span> = [
    </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">400</span></span><span>,
    </span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-number">500</span></span><span>,
    </span><span><span class="hljs-string">"d"</span></span><span> =&gt; </span><span><span class="hljs-number">600</span></span><span>
];

</span><span><span class="hljs-comment">// 取出两个数组真ん中相同键的元素</span></span><span>
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_intersect_key</span></span><span>(</span><span><span class="hljs-variable">$array1</span></span><span>, </span><span><span class="hljs-variable">$array2</span></span><span>);

</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$result</span></span><span>);

<span class="hljs-comment">/**
 * 出力結果:
 * Array
 * (
 *     [b] =&gt; 200
 *     [c] =&gt; 300
 * )
 *
 * 見ることができます,キーのみ "b" そして "c" 存存在する于 $array1 そして $array2 真ん中,したがって、最終的に返された配列
 * 対応するものが含まれています $array1 真んの値。
 *
 * 注意すべきこと:
 * 1. array_intersect_key 配列のキー名のみを比較します,キー値を比較しないでください。
 * 2. 関数は、比較のために同時に複数の配列を受け入れることができます,最终返回只保留那些存在する所有数组真ん中都存存在する的键。
 *
 * 例:複数の配列
 */</span>
</span><span><span class="hljs-variable">$array3</span></span><span> = [
    </span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-number">700</span></span><span>,
    </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">800</span></span><span>
];

</span><span><span class="hljs-variable">$result2</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_intersect_key</span></span><span>(</span><span><span class="hljs-variable">$array1</span></span><span>, </span><span><span class="hljs-variable">$array2</span></span><span>, </span><span><span class="hljs-variable">$array3</span></span><span>);

</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$result2</span></span><span>);

<span class="hljs-comment">/**
 * 出力結果:
 * Array
 * (
 *     [b] =&gt; 200
 *     [c] =&gt; 300
 * )
 *
 * ここ,最终结果是保留同时存存在する于 $array1, $array2 そして $array3 真んキーイン。
 *
 * 要約します:
 * array_intersect_key 配列キー名の交差点を処理するための強力なツールです,尤其适用于存在する多维数组或关联数组
 * 真ん指定されたキーを除外します,手動ループの判断は避けてください,提高代码效率そして可读性。
 */</span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>