ホームページ  >  記事  >  バックエンド開発  >  phpのarray_merge関数を使用する際に注意が必要な問題があります、phparray_merge_PHPチュートリアル

phpのarray_merge関数を使用する際に注意が必要な問題があります、phparray_merge_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-13 09:59:04771ブラウズ

PHPのarray_merge関数、phparray_mergeを使用する際の注意点

PHP言語でarray_merge関数を使用する場合、同じキー名が上書きされると思いますが、以下のコードをご覧ください。
コードをコピーします コードは次のとおりです: $a1 = 配列(1=>'abc', 3=>10);
$a2 = 配列(1=>'efg', 3=>20);
print_r(array_merge($a1, $a2));

何が出力されますか?私たちが期待していたのは:


コードをコピーします コードは次のとおりです: 配列
(
[1] => [3] => 20
)


実際の出力は次のとおりです:

コードをコピーします コードは次のとおりです: 配列 (
[0] =>ABC
[1] => 10
[2] => [3] => 20
)


上書きされなかっただけでなく、数字キーのインデックスが継続的に再作成されました。

最初はこれはバグだと思いましたが、PHP マニュアル http://php.net/manual/zh/function.array-merge.php を読みました

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

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


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

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/976035.html技術記事 phpのarray_merge関数を使用する際に注意が必要な問題があります phparray_merge php言語でarray_merge関数を使用する場合、同じキー名が上書きされると思いますが、以下のコードを参照してください。 ...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。