ホームページ  >  記事  >  バックエンド開発  >  PHPで配列をマージしてキー値を保持する方法

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

不言
不言オリジナル
2018-06-07 11:26:152272ブラウズ

以下では、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) であり、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
)

質問番号 (キー) は数値であるため、キー名は再結合されます。 -インデックス化されているため、質問番号は保持されません。

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

<?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 の 3 つのメソッド list()、each()、while の概要

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

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