php中判断数组相等的方法以及数组运算符介绍_PHP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:smarty模板引擎之分配数据类型
这篇文章主要介绍了smarty模板引擎之分配数据类型,实例分析了smarty模板引擎数据类型的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下 本文实例讲述了smarty模板引擎之分配数据类型用法。分享给大家供大家参考。具体分析如下: 一、分配基本数据 ? 浏览器显示结

 这篇文章主要介绍了php中判断数组相等的方法以及数组运算符介绍,本文讲解了相关知识并给出实例代码,需要的朋友可以参考下

   

如何判断两个数组相等呢?其实很简单,用 == 或者 === 就可以了
php手册里说明如下:

php中判断数组相等的方法以及数组运算符介绍   模板无忧

那像 array('k'=>array())这样的多维数组能用如上方法判断相等吗?当然也可以。
若数组是数字索引的,就要注意一下了,见代码:

代码如下:
<?php
$a = array("apple", "banana");
$b = array(1 => "banana", "0" => "apple");

 

var_dump($a == $b); // bool(true)
var_dump($a === $b); // bool(false)
?>

 

除了==这种数组操作符之外,还有其他比较绕的方法来判断。比如说,利用array_diff($a, $b)来比较两个数组的差集,如果差集是空数组的话就相等了。
然后再说一下 数组的 + 加号运算符。+ 和 array_merge的区别在遇到相等key时,用+时,左边数组会覆盖掉右边数组的值,array_merge相反,后面的数组覆盖掉前面的。

 

代码如下:
<?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 = array_merge($a, $b); // Union of $b and $a
echo "array_merge of \$b and \$a: \n";
var_dump($c);
?>

 

执行后输出:

 

代码如下:
Union of $a and $b:
array(3) {
["a"]=>
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"
}

分享:php array_merge函数使用需要注意的一个问题
这篇文章主要介绍了php array_merge函数使用需要注意的一个问题,本文讲解array_merge合并数组时不会合并数字键名的问题,大家使用时需要注意,需要的朋友可以参考下 使用php语言的array_merge函数时,以为相同的键名会覆盖,但是请看如下代码: 代码如下: $a1 = array(1=

来源:模板无忧//所属分类:PHP教程/更新时间:2015-03-31
相关PHP教程