The + operator appends elements of remaining keys from the right handed array to the left handed,whereas duplicated keys are NOT overwritten. 今天 再次看 PHP manual的时候,才知道
代码如下:
PHP
$a = array("a" => "apple","b" => "banana");
$b = array("a" => "pear","b" => "strawberry","c" => "cherry");
$c = $a + $b; // Union of $a and $b
echo "Union of \$a and \$b: \n";
var_dump($c);
$c = $b + $a; // Union of $b and $a
echo "Union of \$b and \$a: \n";
var_dump($c);
?>
$a = array("a" => "apple","b" => "banana");
$b = array("a" => "pear","b" => "strawberry","c" => "cherry");
$c = $a + $b; // Union of $a and $b
echo "Union of \$a and \$b: \n";
var_dump($c);
$c = $b + $a; // Union of $b and $a
echo "Union of \$b and \$a: \n";
var_dump($c);
?>
When executed,this script will print the following:
Union of $a and $b:
代码如下:
array(3) {
["a"]=>
string(5) "apple"
["b"]=>
string(6) "banana"
["c"]=>
string(6) "cherry"
}
Union of $b and $a:
array(3) {
["a"]=>
string(4) "pear"
["b"]=>
string(10) "strawberry"
["c"]=>
string(6) "cherry"
}
["a"]=>
string(5) "apple"
["b"]=>
string(6) "banana"
["c"]=>
string(6) "cherry"
}
Union of $b and $a:
array(3) {
["a"]=>
string(4) "pear"
["b"]=>
string(10) "strawberry"
["c"]=>
string(6) "cherry"
}
原来,我的理解就是。直接把$b中的元素直接复制到$a中。
我错了。 原文链接:https://www.f2er.com/php/28417.html