zoukankan      html  css  js  c++  java
  • array_map常用技巧

    array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新值的数组。

    简单来说 “array_map” 会对数组中的每一项进行处理,并返回处理后的数据。

    定义:

    array_map的参数为array_map(处理函数,数组,数组...)

    处理函数可以是匿名函数,也可以是具名函数

    数组可以是多个数组或者是单个数组

    用法:

     应用场景1:对数组的每一项进行乘法操作

    1
    2
    3
    4
    5
    $arr array(1,2,3,4,5);
    $result array_map(function $value ){
      return $value * 10;
    },$arr);
    print_r($result);   //Array ( [0] => 10 [1] => 20 [2] => 30 [3] => 40 [4] => 50 )

      

     应用场景2:二维数组转换成一维数组

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    $arr array(
        array(
          array('id'=>1,'name'=>'a'),
          array('id'=>2,'name'=>'b')
        ),
        array(
          array('id'=>3,'name'=>'c'),
          array('id'=>4,'name'=>'d'),
          array('id'=>5,'name'=>'e')
        )
      );
     
      $result array();
      array_map(function ($valueuse (&$result){
        $result array_merge($result,array_values($value));
      },$arr);
      /*
      讲一下function () use (){}  是php5.3后新增的闭包,use()的括号里面可以对外部的变量进行传参,共匿名函数使用
     
     
      Array
      (
        [0] => Array
            (
                [id] => 1
                [name] => a
            )
     
        [1] => Array
            (
                [id] => 2
                [name] => b
            )
     
        [2] => Array
            (
                [id] => 3
                [name] => c
            )
     
        [3] => Array
            (
                [id] => 4
                [name] => d
            )
     
        [4] => Array
            (
                [id] => 5
                [name] => e
            )
     
      )<br>  */
  • 相关阅读:
    多线程爬取图片(生产者-消费者模式)
    数据结构1_C---单链表的逆转
    Java基础面试知识点总结
    Java工程师必备书单
    Java工程师修炼之路(校招总结)
    Java秋招面经大合集
    我的秋招经验分享(已拿BAT头条网易滴滴)
    听说go语言越来越火了?那么请收下这一份go语言书单吧!
    2020还是AI最火?推荐几本深度学习的书籍帮你入门!
    人工智能真的有那么神秘么,推荐一份机器学习入门书单搞定它!
  • 原文地址:https://www.cnblogs.com/jasonxu19900827/p/10956036.html
Copyright © 2011-2022 走看看