PHPでは、 array_merge()とarray_diff_ukey()は、指定された条件に基づいて配列を簡単にマージし、配列の要素を削除するのに役立つ2つの非常に一般的な関数です。この記事では、これら2つの機能を介してアレイをマージし、指定されたキーを頂点にする方法を説明します。
array_merge()は、1つ以上の配列を配列に結合するために使用されます。配列に同じキー名がある場合、その後の配列の値は前の配列の値を上書きします。
例えば:
$array1 = ['a' => 'apple', 'b' => 'banana'];
$array2 = ['b' => 'blueberry', 'c' => 'cherry'];
$result = array_merge($array1, $array2);
print_r($result);
出力:
Array
(
[a] => apple
[b] => blueberry
[c] => cherry
)
array_diff_ukey()関数は、2つの配列のキーを比較し、差分パーツを返すために使用されます。ユーザー定義のコールバック関数に基づいて、2つの配列キーの違いを決定します。
例えば:
$array1 = ['a' => 'apple', 'b' => 'banana', 'c' => 'cherry'];
$array2 = ['a' => 'apricot', 'd' => 'date'];
$result = array_diff_ukey($array1, $array2, 'key_compare_func');
print_r($result);
function key_compare_func($key1, $key2) {
return strcmp($key1, $key2);
}
出力:
Array
(
[b] => banana
[c] => cherry
)
array_diff_ukey()は、値ではなく配列のキーを比較するため、その結果は、最初の配列にあるが2番目の配列ではないキーを返すことになります。
これら2つの機能を組み合わせることで、最初に配列をマージし、指定された条件に従って特定のキーを削除できます。ここに、Array_merge()を介して2つの配列をマージし、 Array_diff_ukey()を使用していくつかのキーを頂点にする方法を示すサンプルコードを示します。
<?php
// 2つの配列を定義します
$array1 = ['a' => 'apple', 'b' => 'banana', 'c' => 'cherry'];
$array2 = ['b' => 'blueberry', 'd' => 'date'];
// アレイをマージします
$mergedArray = array_merge($array1, $array2);
// 削除するキー
$keysToRemove = ['b'];
// 使用 array_diff_ukey() 指定されたキーを削除します
$finalArray = array_diff_ukey($mergedArray, $keysToRemove, function($key1, $key2) {
return strcmp($key1, $key2); // 比較キー
});
// 出力結果
print_r($finalArray);
?>
Array
(
[a] => apple
[c] => cherry
[d] => date
)
この例では、最初に$ array1および$ array2アレイをarray_merge()とマージして、新しいマージ配列を取得します。次に、 array_diff_ukey()を使用して、キー「b」を含む要素を削除します。最後に、返された配列には、キー「B」を除くすべての要素が含まれます。
一部のアプリケーションでは、URLを使用してデータを処理して、URLからデータを取得したり、配列を操作したりする場合があります。 URLを処理してドメイン名を置き換える必要がある場合は、 Parse_url()関数を使用してURLを抽出および変更できます。
URLのドメイン名をM66.netに置き換える必要があると仮定すると、次のコードを使用できます。