php数组函数(1)

list() ; 把数组中的值赋值个一组变量,只用于数字索引从0开始的数组

  $arr = [1,2,3,5,6];

  list($one,$two,$three,$four,$five) = $arr;

  echo $one.$two.$three.$four.$five ; //12356;

each();返回数组中当前的键值对,并将数组指针向前移动一步

  each配合list()可遍历数组和关联数组

  $arr = [1,2,3,4,5];

  while(list($key,$value) = each($arr)){
      echo $key.'=>'.$value;
  }

  //12345;

array_values();获取数组中所有值到一个数组,并自动添数字索引

   $arr = ['name'=>'刘德华','age'=>20,'sex'=>'男'];
   $arr1 = array_values($arr);
   var_dump($arr1);

  //: array(3) { [0]=> string(9) "刘德华" [1]=> int(20) [2]=> string(3) "男" }

array_keys();返回数组中所有的键值到一个数组.并自动添加数字索引

  $arr = ['name'=>'刘德华','age'=>20,'sex'=>'男'];
  $arr1 = array_keys($arr);
  var_dump($arr1);

  //: array(3) { [0]=> string(4) "name" [1]=> string(3) "age" [2]=> string(3) "sex" }

array_key_exists() ; 检查数组里是否有指定的键名或索引,返回true

  $arr = ['name'=>'刘德华','age'=>20,'sex'=>'男'];
  $query = array_key_exists('name',$arr);
  if($query){
      echo "找到了";
  }else{
      echo "没有找到";
  }
  //找到

in_array(); — 检查数组中是否存在某个值,返回true

  $arr = ['name'=>'刘德华','age'=>20,'sex'=>'男'];
  $query = in_array('刘德华',$arr);
  if($query){
      echo "找到了";
  }else{
      echo "没找到";
  }

  //找到了

count();计算数组中的单元数目,或对象中的属性个数

  $arr = [1,2,3,4,5];
  echo count($arr);
  //5

array_count_values();统计数组中的值出现的次数,返回一个新的数组,键名是原数组的值,值是原数组值出现的次数,

  $arr = [1,2,3,4,5,3,5,2];
      $num = array_count_values($arr);
      var_dump($num);

  //array(5) { [1]=> int(1) [2]=> int(2) [3]=> int(2) [4]=> int(1) [5]=> int(2) }

array_unique();移除数组中重复的值,返回一个新的数组

  $arr=[1,2,3,4,5,3,5,2];
      $num = array_unique($arr);
      var_dump($num);
 //array(5) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(4) [4]=> int(5) }

array_filter();用回调函数过滤数组中的单元,返回新的函数

  $arr = ['a' = >1,'b' = >2,'c' = >3,'d' = >4];

    //奇数
    function odd($var){
        return $var%2! = 0;
    }
    $result = array_filter($arr,'odd');
    print_r($result);

//Array ( [a] => 1 [c] => 3 )

array_map();为数组的每个元素应用回调函数,返回一个新的数组

  $arr = ['a'=>1,'b'=>2,'c'=>3,'d'=>4];
    function add($n){
        return $n*2;
    }
   $newArr = array_map('add',$arr);
    var_dump($newArr);

 //array(4) { ["a"]=> int(2) ["b"]=> int(4) ["c"]=> int(6) ["d"]=> int(8) }

array_map();多数组应用

$arr=['a'=>1,'b'=>2,'c'=>3,'d'=>4];
    $brr=['a'=>2,'b'=>3,'c'=>4,'d'=>5];
    function add($n,$m){
        return $n.'+'.$m.'='.$n+$m;
    }
    $newArr=array_map('add',$arr,$brr);
    var_dump($newArr);

//array(4) { [0]=> int(3) [1]=> int(5) [2]=> int(7) [3]=> int(9) }

array_walk();自定义函数遍历数组中的每个元素做回调处理,成功返回true

  $arr=['a'=>1,'b'=>2,'c'=>3,'d'=>4];
    function test($n,$m){
        echo $n.'=>'.$m.'<br>';
    }
    array_walk($arr,'test');

//1=>a,2=>b,3=>c,4=>d

猜你喜欢

转载自blog.csdn.net/weixin_42881256/article/details/82802791