php中判断数组相等的方法以及数组运算符介绍
如何判断两个数组相等呢?其实很简单,用 == 或者 === 就可以了 php手册里说明如下: 那像 array('k'=>array())这样的多维数组能用如上方法判断相等吗?当然也可以。 若数组是数字索引的,就要注意一下了,见代码: 代码如下: "banana","0" => "apple");
var_dump($a == $b); // bool(true) var_dump($a === $b); // bool(false) ?> 除了==这种数组操作符之外,还有其他比较绕的方法来判断。比如说,利用array_diff($a,$b)来比较两个数组的差集,如果差集是空数组的话就相等了。 然后再说一下 数组的 + 加号运算符。+ 和 array_merge的区别在遇到相等key时,用+时,左边数组会覆盖掉右边数组的值,array_merge相反,后面的数组覆盖掉前面的。 代码如下: "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 = array_merge($a,$b); // Union of $b and $a echo "array_merge of $b and $a: n"; var_dump($c); ?> 执行后输出: 代码如下:
string(5) "apple"
["b"]=>
string(6) "banana"
["c"]=>
string(6) "cherry"
}
array_merge of $b and $a:
array(3) {
["a"]=>
string(4) "pear"
["b"]=>
string(10) "strawberry"
["c"]=>
string(6) "cherry"
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |