ホームページ >バックエンド開発 >PHPの問題 >PHP配列を上書きせずにマージする方法

PHP配列を上書きせずにマージする方法

藏色散人
藏色散人オリジナル
2021-06-11 10:18:003631ブラウズ

PHP 配列を上書きせずに結合する方法: まず PHP サンプル ファイルを作成し、次に「array_merge($arr1, $arr2);」メソッドを使用して、同じキー名を上書きせずに 2 つの配列を結合します。

PHP配列を上書きせずにマージする方法

この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

PHP 配列をマージする方法上書きせずに?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 つの答えは次のとおりです。アンケート内の多肢選択式の質問の一部を結合する必要があり、各部分の回答は配列 (キー=>値) であり、キーは質問番号、値は回答です。 2 つのパートで質問番号が重複しています。

<?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 ビデオ チュートリアル

以上がPHP配列を上書きせずにマージする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。