PHPで配列をマージし、キー値を保持する方法

PHPz
リリース: 2018-10-23 14:40:36
転載
1831 人が閲覧しました

この記事では主に PHP が配列をマージし、キー値を保持する方法を紹介します。興味のある方は参考にしていただければ幸いです。

php は、通常、array_merge メソッドを使用して配列をマージします。

array_merge — 1 つ以上の配列をマージします

array array_merge ( array $array1 [, array $... ] )
ログイン後にコピー

array_merge は、1 つ以上の配列のセルをマージし、1 つの配列の値を前の配列に追加し、結果の配列を返します。

入力配列に同じ文字列キー名がある場合、キー名の後の値で前の値が上書きされます。ただし、配列に数値キーが含まれている場合、数値キーは元の値を上書きせず、追加されます。

配列のみが指定され、その配列が数値的にインデックス付けされている場合、キー名は連続的に再インデックス付けされます。

例 1、配列は文字列キー名を使用し、同じキー名は後続のキー名によって上書きされます

<?php$arr1 = array(&#39;name&#39;=>&#39;fdipzone&#39;);$arr2 = array(&#39;name&#39;=>&#39;terry&#39;);$result = array_merge($arr1, $arr2);
print_r($result);?>
ログイン後にコピー

出力:

Array(
    [name] => terry
)
ログイン後にコピー

例 2、配列は数値キー名を使用し、キー名前は同じですが上書きされず、キー名が再インデックスされます

<?php$arr1 = array(0=>&#39;fdipzone&#39;,1=>&#39;terry&#39;);$arr2 = array(0=>&#39;php&#39;,1=>&#39;python&#39;);$result = array_merge($arr1, $arr2);
print_r($result);?>
ログイン後にコピー

出力:

Array(
    [0] => fdipzone
    [1] => terry
    [2] => php
    [3] => python
)
ログイン後にコピー

作業の必要性により、複数の 2 つの部分の回答をマージする必要があります。アンケート内の質問を選択し、回答の各部分は配列 (key=>value) です。キーは質問番号、値は回答であり、2 つの部分で質問番号の重複はありません。

回答の 2 つの部分をマージするには、array_merge を使用します

<?php$form_data1 = array(11=>&#39;A&#39;,12=>&#39;B&#39;,13=>&#39;C&#39;,14=>&#39;D&#39;);$form_data2 = array(25=>&#39;B&#39;,26=>&#39;A&#39;,27=>&#39;D&#39;,28=>&#39;C&#39;);$result = array_merge($form_data1, $form_data2);
print_r($result);?>
ログイン後にコピー

出力:

Array(
    [0] => A
    [1] => B
    [2] => C
    [3] => D
    [4] => B
    [5] => A
    [6] => D
    [7] => C
)
ログイン後にコピー

Array_merge を使用して、質問番号 (キー) が数値であるため、キー名が再インデックスされ、その結果となります。質問番号は保持されません。

配列をマージしてキー値を保持するメソッド:

<?php$form_data1 = array(11=>&#39;A&#39;,12=>&#39;B&#39;,13=>&#39;C&#39;,14=>&#39;D&#39;);$form_data2 = array(25=>&#39;B&#39;,26=>&#39;A&#39;,27=>&#39;D&#39;,28=>&#39;C&#39;);$result = $form_data1 + $form_data2;
print_r($result);?>
ログイン後にコピー

出力:

Array(
    [11] => A
    [12] => B
    [13] => C
    [14] => D
    [25] => B
    [26] => A
    [27] => D
    [28] => C
)
ログイン後にコピー

"+"演算子を使用して配列をマージし、キー値を保持できますマージされた場合の配列 配列には同じキー値が含まれており、後のキー値は前のキー値を上書きしません (前のキー値が優先されます)。

その他の関連チュートリアルについては、こちらをご覧ください入門からマスターまでの PHP プログラミングに関するビデオ チュートリアルの完全なセット

関連ラベル:
ソース:csdn.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート