zoukankan      html  css  js  c++  java
  • php中的常用数组函数(三)(获取数组交集的函数们 array_intersect()、array_intersect_key()、array_intersect_assoc()、array_intersect_uassoc()、array_intersect_ukey())

    这5个获取交集的函数 有 5个对应的获取差集的函数。我是链接


    array_intersect($arr1, $arr2);

    //获得数组同键值的交集


    array_intersect_key($arr1, $arr2);

    //获得数组同键名的交集


    array_intersect_assoc(同上);

    //获得数组同键名键值的交集


    array_intersect_uassoc(同上,'自定义回调函数');

    //用自定义的回调函数来获得数组同键名键值的交集


    array_intersect_ukey(同上, 自定义回调函数);

    //用自定义的回调函数来获得数据同键名的交集


     1 $arr1 = array('r' => 'red','u' => 'blue', 'g' => 'green', 'b' => 'black');
     2 $arr2 = array('r' => 'red', 'b' => 'blue');
     3 /***********array_intersect(计算数组同键值的交集)*****************/
     4 $arrIntersect = array_intersect($arr1, $arr2);
     5 var_dump($arrIntersect);//=>array(2) { ["r"]=> string(3) "red" ["u"]=> string(4) "blue" }
     6 
     7 /***********array_intersect_key(计算数组同键名的交集)*****************/
     8 $arrIntersectKey = array_intersect_key($arr1, $arr2);
     9 var_dump($arrIntersectKey);//=>array(2) { ["r"]=> string(3) "red" ["b"]=> string(5) "black" }
    10 
    11 /***********array_intersect_assoc(计算数组同键名同键值的交集)*****************/
    12 $arrIntersectAssoc = array_intersect_assoc($arr1, $arr2);
    13 var_dump($arrIntersectAssoc);//=>array(1) { ["r"]=> string(3) "red" }
    14 
    15 /***********array_intersect_uassoc(用自定义的回调函数来计算数组同键名同键值的交集)*****************/
    16 $arrIntersectUassoc = array_intersect_uassoc($arr1, $arr2, 'arr_intersect_uassoc_func');
    17 var_dump($arrIntersectUassoc);//=>array(1) { ["r"]=> string(3) "red" }
    18 
    19 function arr_intersect_uassoc_func($a, $b) {
    20     if ($a === $b)
    21         return 0;
    22     elseif ($a > $b)
    23         return 1;
    24     else
    25         return -1;
    26 }
    27 
    28 /***********array_intersect_ukey(用自定义的回调函数来计算数组同键名的交集)*****************/
    29 $arrIntersectUkey = array_intersect_ukey($arr1, $arr2, 'arr_intersect_ukey_func');
    30 var_dump($arrIntersectUkey);//=>array(2) { ["r"]=> string(3) "red" ["b"]=> string(5) "black" }
    31 
    32 function arr_intersect_ukey_func($k1, $k2) {
    33     if ($k1 == $k2)
    34         return 0;
    35     elseif ($k1 > $k2)
    36         return 1;
    37     else
    38         return -1;
    39 }
  • 相关阅读:
    职业规划书
    阿里云mysql安装配置(CentOS 7.3 64)
    在mvc中弹出提示框
    俺的博客开通啦
    sql中计算列小解
    ext的grid 获取页面内容方式
    2条路 代码生成 or 配置 2.1
    ext做列表页面关于查询多行的办法
    .net下开发windows服务的经验
    微软.net下 charting 要注意的事情
  • 原文地址:https://www.cnblogs.com/sweetXiaoma/p/6004045.html
Copyright © 2011-2022 走看看