PHPを使用して、2つの配列のキーが一貫しているかどうかを判断する方法は?
開発プロセス中に、2つの配列のキーが一貫しているかどうかを判断する必要がある状況に遭遇することがよくあります。 PHPは、配列を操作するための多くの便利な機能を提供し、配列キーが一貫しているかどうかを判断するのに役立つ方法があります。この記事では、PHPを使用して、2つの配列のキーが一貫しているかどうかを判断する方法を紹介します。
array_keys()関数は、配列内のすべてのキー名を返すことができ、 sort()関数は配列をソートできます。そのため、最初に2つの配列のキー名を取得し、次にソートして比較できます。
<?php
$array1 = [
'apple' => 1,
'banana' => 2,
'cherry' => 3
];
$array2 = [
'banana' => 5,
'apple' => 1,
'cherry' => 7
];
// 配列のキー名を取得します
$keys1 = array_keys($array1);
$keys2 = array_keys($array2);
// キー名を並べ替えます
sort($keys1);
sort($keys2);
// 2つの配列のキー名が一貫しているかどうかを比較します
if ($keys1 == $keys2) {
echo "2つの配列のキーは一貫しています!";
} else {
echo "2つの配列のキーは一貫性がありません!";
}
?>
array_keys()を使用して、2つの配列のすべてのキーを取得します。
sort()を使用して、キーネーム配列をソートします。
ソートされたキー名配列が一貫しているかどうかを比較します。
一貫している場合、2つの配列のキーが同じであることを意味します。一貫性がない場合、キーが異なることを意味します。
array_diff_key()関数は、2番目の配列に存在するが2番目の配列には存在するキーと返品キーのキーを比較するために使用されます。返された結果が空の配列である場合、2つの配列のキーが一貫していることを意味します。
<?php
$array1 = [
'apple' => 1,
'banana' => 2,
'cherry' => 3
];
$array2 = [
'banana' => 5,
'apple' => 1,
'cherry' => 7
];
// 使用 array_diff_key キーが一貫しているかどうかを判断します
$diff1 = array_diff_key($array1, $array2);
$diff2 = array_diff_key($array2, $array1);
if (empty($diff1) && empty($diff2)) {
echo "2つの配列のキーは一貫しています!";
} else {
echo "2つの配列のキーは一貫性がありません!";
}
?>
array_diff_key($ array1、$ array2) $ array1に存在するが、 $ array2には存在しないキーを返します。
array_diff_key($ array2、$ array1) $ array2に存在するが、 $ array1には存在しないキーを返します。
両方の結果が空の配列である場合、2つの配列のキーがまったく同じであることを意味します。
array_intersect_key()関数は、2つの配列のキーを比較し、両方の配列に存在するキーを返すために使用されます。キーが元の配列のキーの数と比較することにより、キーが一貫しているかどうかを判断できます。
<?php
$array1 = [
'apple' => 1,
'banana' => 2,
'cherry' => 3
];
$array2 = [
'banana' => 5,
'apple' => 1,
'cherry' => 7
];
// 2つの配列キーの交差点を取得します
$commonKeys = array_intersect_key($array1, $array2);
// 交差点のキー数と元の配列のキー数を比較する
if (count($commonKeys) == count($array1) && count($commonKeys) == count($array2)) {
echo "2つの配列のキーは一貫しています!";
} else {
echo "2つの配列のキーは一貫性がありません!";
}
?>
array_intersect_key()を使用して、2つの配列の共通キーを取得します。
一般的なキーの数が元の配列のキーの数に等しいかどうかを比較します。等しい場合、2つの配列のキーが一貫していることを意味します。
PHPでは、2つの配列のキーが一貫しているかどうかを判断するための複数の方法があります。特定のニーズに応じて、最も適切な方法を選択できます。キーが同じかどうかを確認する必要があり、注文を気にしない場合は、 array_diff_key()またはarray_intersect_key()を使用できます。注文を検討する必要がある場合は、 array_keys()とsort()の組み合わせを使用することが適切です。
どちらの方法に関係なく、タスクをよりよく完了するために、アプリケーションのシナリオに従って柔軟に使用できます。