ホームページ > バックエンド開発 > PHPチュートリアル > PHP_PHP チュートリアルでの array_merge と配列加算の違いの分析

PHP_PHP チュートリアルでの array_merge と配列加算の違いの分析

WBOY
リリース: 2016-07-21 15:06:40
オリジナル
780 人が閲覧しました

まず、キー名が文字列かどうかを確認してください。 2 つの違いは次のとおりです。

コードをコピー コードは次のとおりです:
$arr1 = array('a'=>'PHP');
$arr2 = array('a'=> 'JAVA' );
//キー名が文字でキー名が同じ場合、array_merge() 後の配列要素の値が前の配列要素の値を上書きします
print_r(array_merge($arr1,$arr2)) ; //Array ( [a] = > JAVA )
//キー名が文字であり、キー名が同じ場合、配列の加算では最初の値が結果として使用されます
print_r($arr1+$arr2) / /Array ( [a] => PHP )
?>

キー名が数値の場合、2 つの違いは次のとおりです:

コードをコピーします コードは次のとおりです:
$arr1 = array("C","PHP") ;
$arr2 = array("JAVA","PHP");
//キー名が数値の場合、array_merge() は上書きしないでください
print_r(array_merge($arr1,$arr2));//Array ( [ 0] => C [1] => PHP [2] => JAVA [3] => PHP )
//キー名が配列の場合、配列の加算では最初の値が結果として使用され、同じキー名を持つ後続のキー名は破棄されます
print_r($arr1+$arr2);//Array ( [0] => C [1] => PHP )
?>

それには特に注意してください。 「array_merge と配列加算の違い」は、上記で非常に明確に説明されています。「同じ文字キー名と異なる値を持つ 2 つの配列値セットを最も効果的に取得する方法」に戻ります。これは正しくありませんか? PHP には、あまり使用しない関数もあります: array_merge_recursive — 1 つ以上の配列を再帰的にマージします。入力配列が同じ文字列キー名を持つ場合、これらの値は 1 つの Go in にマージされます。配列。例として:

コードをコピーします コードは次のとおりです:
$arr1 = array("a"=>"php","c");
$arr2 = array("a "=>"java","c","ruby");
print_r(array_merge_recursive($arr1, $arr2));
?>

結果は次のとおりです。
(
[a] => ; 配列
このように、同じキー名の要素値のコレクションを複数の配列で取得できます。




http://www.bkjia.com/PHPjc/327601.html

www.bkjia.com

tru​​e
http://www.bkjia.com/PHPjc/327601.html

技術記事

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