PHPでは、array_uintersect_uassoc()は、2つ以上の配列の交点を計算するために使用される関数です。従来のarray_intersect()とは異なり、array_uinterect_uassoc()は、配列の値を比較するだけでなく、配列のキーを比較し、ユーザー定義のコールバック関数をサポートして比較プロセスを制御します。
array_uintersect_uassoc()関数は次のように定義されます。
関数パラメーター説明:
戻り値:この関数は、2つ以上の配列間のキーと値の一致の交点を含む配列を返します。
array_uintersect_uassoc()関数には、配列のキーと値を比較するために2つのコールバック関数が必要です。これらの2つのコールバック関数は、整数値を返して、2つの要素が等しいかサイズであるかを決定する必要があります。 0を返すことは一致することを意味し、正または負のことを返すことは不一致を意味します。
array_uintersect_uassoc()関数とそのコールバック関数を使用する方法を示す例を以下に示します。
出力の結果は次のとおりです。
配列([c] =>チェリー)
上記のコードでは、strcasecmp()を使用してキー名(ケース非感受性)を比較し、匿名関数を定義して値のサイズを比較します。
array_uintersect_uassoc()関数は、特にカスタムルールに基づいて配列のキーと値を比較する必要がある場合、複数の配列で一般的な要素を比較するのに非常に適しています。たとえば、Webサイトのユーザーの興味と趣味を処理しているとしたら、この関数を使用して複数のユーザーの間で共通の関心を見つけることができます。
自動車クラブがあり、各メンバーが異なる車両情報を持っているとしましょう。クラブとメンバーの間で共有されている車両を見つけたいと考えています。 Array_uintersect_uassoc()を使用して比較できます。
出力の結果は次のとおりです。
array([tina] => audi [luis] => mercedes [tom] => bmw)
この例は、メンバーやクラブが所有する車両を比較する方法を示しています。
array_uintersect_uassoc()関数は、複数の配列で一般的なキーと値を見つけるのに役立つ効率的な配列比較ツールです。カスタムコールバック関数を使用すると、キーと値の比較ルールを正確に制御できるため、さまざまなシナリオに柔軟に適用できます。
この関数を使用する場合は、適切なコールバック関数を提供して、キーと値の比較を処理して正確な結果を確保することを忘れないでください。