ホームページ >バックエンド開発 >PHPチュートリアル >PHP 配列関数 array_merge
この記事では主に PHP の配列関数 array_merge を紹介します。興味のある方はぜひ参考にしてください。
この関数は昔から使っていましたが、あまり深く調べずに簡単に使っていました
今日、他の人のブログを見ていたら、array_mergeの使用体験をいくつか見かけたので、使ってみました。自分でまとめてみました。
array_merge は、1 つ以上の配列をマージします。
この関数は主に、データベースから取得した結果セットを結合するために使用されます。
パラメータの設定も非常に簡単です array_merge(arr1, arr2, arrN)
ここでのパラメータは配列である必要があることに注意してください。そうでない場合はエラーが報告されます。
とても簡単そうに見えますが、落とし穴もたくさんあります。
単一配列と複数配列の観点から分析していきます。
1. 複数の配列 (カスタムキー名) のマージ操作:
以下の実行結果から、$arr1 と $arr2 の同じキー名のデータが上書きされていることがわかります。
次の配列は、前の配列の同じキーで値を上書きします。
<?php $arr1 = array('a'=>'1','b'=>'2'); $arr2 = array('a'=>'1','b'=>'3','c'=>'2'); $ret = array_merge($arr1,$arr2); print_r($ret); //run result Array ( [a] => 1 [b] => 3 [c] => 2 )
2. 複数の配列のマージ操作 (カスタマイズされた数値キー名):
配列内のキー名が数値の場合、キー名はフォーマットされ、すべてのキー値は保持される。
<?php $arr1 = array(1=>'1',2=>'2'); $arr2 = array(1=>'1',2=>'3',6=>'2'); $ret = array_merge($arr1,$arr2); print_r($ret); //run result Array ( [0] => 1 [1] => 2 [2] => 1 [3] => 3 [4] => 2 )
3. 複数の配列がマージされます (キー名は入力されません):
<?php $arr1 = array(1,2); $arr2 = array(1,2,6); $ret = array_merge($arr1,$arr2); print_r($ret); //run result Array ( [0] => 1 [1] => 2 [2] => 1 [3] => 2 [4] => 6 )
4. ほとんどのマージ操作 (配列が空の場合):
この操作は、配列が空の場合に非常に一般的で、どの配列が空であっても、既存の値が表示されます。
<?php $arr1 = array(); $arr2 = array(1,2,6); $ret = array_merge($arr1,$arr2); print_r($ret); //run result Array ( [0] => 1 [1] => 2 [2] => 6 )
5. 単一配列の操作:
単一配列 この場合、array_merge() 関数は配列をマージするために使用されるため、通常は使用されません。
ただし、元の関連キー名を復元したい場合は、この機能を使用できますが、お勧めしません。
それよりも優れた関数があるので、array_values()を使用できます
単一配列の操作は、実際には上記の2つの場合と3の場合に非常に似ています。キー名が数値の場合、キー名はフォーマットされます。それ以外の場合は直接表示されます。
<?php $arr1 = array(1=>1,3=>2,6=>6); $ret = array_merge($arr1); print_r($ret); //run result Array ( [0] => 1 [1] => 2 [2] => 6 )
6. 2 つの配列をマージする場合、array_merge() を使用できます。後者の配列は前の配列とマージされます
しかし、前の配列を後の配列で使用したい場合配列 マージを行う場合はどうすればよいですか?
array_merge() 内の 2 つの配列の位置を変更する必要がありますか?実はもっと簡単な方法があります。
「+」を使用するだけで操作を完了できます。
<?php $arr1 = array('a'=>1,'b'=>2); $arr2 = array('a'=>1,'b'=>3,'c'=>6); $ret = $arr1+$arr2; print_r($ret); //run result Array ( [a] => 1 [b] => 2 [c] => 6 )
関連する推奨事項:
imagecopymerge() 関数 半透明の透かしを作成する手順の詳細な説明
以上がPHP 配列関数 array_mergeの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。