zoukankan      html  css  js  c++  java
  • php 判断两个数组是否相等

    摘自:https://www.cnblogs.com/cuculus/p/9293519.html

    如何判断两个数组相等呢?其实很简单,用 == 或者 === 就可以了

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

    复制代码
    1 <?php
    2     $a = array("apple", "banana");
    3     $b = array(1 => "banana", "0" => "apple");
    4 
    5     var_dump($a == $b); // bool(true)
    6     var_dump($a === $b); // bool(false)
    7 ?>
    复制代码

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

    复制代码
     1 <?php
     2     $a = array("a" => "apple", "b" => "banana");
     3     $b = array("a" => "pear", "b" => "strawberry", "c" => "cherry");
     4 
     5     $c = $a + $b; // Union of $a and $b
     6     echo "Union of $a and $b: 
    ";
     7     var_dump($c);
     8 
     9     $c = array_merge($a, $b); // Union of $b and $a
    10     echo "array_merge of $b and $a: 
    ";
    11     var_dump($c);
    12 ?>
    复制代码

    执行后输出:

    复制代码
    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"
    }
    复制代码
  • 相关阅读:
    织梦安装
    讲解版的自动轮播(新手福利)样式和js就不分离了为了看的方便
    APP制作过程
    细线边框
    APP常用模块
    PC-JS小技巧
    PC-CSS-多浏览器支持HTML5
    jQuery瀑布流实例无限滚动加载图片
    25个Java机器学习工具&库(收藏)
    java中的动态代理----自己手动实现
  • 原文地址:https://www.cnblogs.com/cjjjj/p/12652399.html
Copyright © 2011-2022 走看看