2つの配列を結合する2つの方法の異同
2655 ワード
本論文では,$a+$b,array_を統合する2つの方法について論じる.merge($a,$b)
オペレータ+は、前の数に基づいて後の配列を挿入し、同じ破棄があればarray_mergeは、前のパラメータに基づいて後のパラメータを挿入し、同じkeyがあれば後の上書きを使用します.例は次のとおりです.
両方がインデックス配列の場合、array_を使用します.mergeでは、次のようなインデックスのリセットが発生する可能性があります.
したがって、+を使用して2つのインデックス配列を結合すると、値が破棄され、array_mergeはできません.重複するインデックスをリセットします.
オペレータ+は、前の数に基づいて後の配列を挿入し、同じ破棄があればarray_mergeは、前のパラメータに基づいて後のパラメータを挿入し、同じkeyがあれば後の上書きを使用します.例は次のとおりです.
php > $a = array('a'=>'1','b'=>'2','c'=>'3');
php > $b = array('c'=>3,'d'=>'4','e'=>'5');
php > $c = $a+$b;
php > $d = array_merge($a,$b);
php > var_dump($c,$d);
array(5) {
'a' =>
string(1) "1"
'b' =>
string(1) "2"
'c' =>
string(1) "3"
'd' =>
string(1) "4"
'e' =>
string(1) "5"
}
array(5) {
'a' =>
string(1) "1"
'b' =>
string(1) "2"
'c' =>
int(3)
'd' =>
string(1) "4"
'e' =>
string(1) "5"
}
php > $e = array_merge($b,$a);
php > var_dump($e);
array(5) {
'c' =>
string(1) "3"
'd' =>
string(1) "4"
'e' =>
string(1) "5"
'a' =>
string(1) "1"
'b' =>
string(1) "2"
}
php > $f=$b+$a;
php > var_dump($f);
array(5) {
'c' =>
int(3)
'd' =>
string(1) "4"
'e' =>
string(1) "5"
'a' =>
string(1) "1"
'b' =>
string(1) "2"
}
両方がインデックス配列の場合、array_を使用します.mergeでは、次のようなインデックスのリセットが発生する可能性があります.
php > $a = array();
php > $b = array(1=>'data');
php > $c = $a+$b;
php > $d = array_merge($a,$b);
php > var_dump($c,$d);
array(1) {
[1] =>
string(4) "data"
}
array(1) {
[0] =>
string(4) "data"
}
したがって、+を使用して2つのインデックス配列を結合すると、値が破棄され、array_mergeはできません.重複するインデックスをリセットします.
php > $a = array(1=>'one',2=>'two',3=>'three');
php > $b = array(3=>'three',4=>'four',5=>'five');
php > $c = $a+$b;
php > $d = array_merge($a,$b);
php > var_dump($c,$d);
array(5) {
[1] =>
string(3) "one"
[2] =>
string(3) "two"
[3] =>
string(5) "three"
[4] =>
string(4) "four"
[5] =>
string(4) "five"
}
array(6) {
[0] =>
string(3) "one"
[1] =>
string(3) "two"
[2] =>
string(5) "three"
[3] =>
string(5) "three"
[4] =>
string(4) "four"
[5] =>
string(4) "five"
}