array_map 函数的介绍

将数组的每个单元使用回调函数
格式: array_map(callback, array)

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
 
$arr = [
[
'id' => 1,
'name' => 'zhang',
],
[
'id' => 2,
'name' => 'lisi'
],
[
'id' => 3,
'name' => 'joe'
]
];
 
// 使用匿名回调函数,也可以使用自定义函数
$res = array_map(function($val) {
return $val['id'];
}, $arr);
 
print_r($arr);
 
// array_map 的回调函数也可以使用 php 函数
$arr = [
'aa',
'bc',
'Ad'
];
$res = array_map('strtoupper', $arr);
print_r($res);

array_filter 函数的介绍

使用回调函数过滤数组
格式:array_filter(array, callback)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$arr = [
[
'id' => 1,
'name' => 'zhang',
],
[
'id' => 2,
'name' => 'lisi'
],
[
'id' => 3,
'name' => 'joe'
]
];
$res = array_filter($arr, function($val) {
if ($val['id'] > 1) {
return $val;
}
});
print_r($res);

array_reduce 函数的介绍

使用回调函数迭代将函数转化为单一的值
格式:array_reduce(array, callback)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
$arr = [
[
'id' => 1,
'name' => 'zhang',
],
[
'id' => 2,
'name' => 'lisi'
],
[
'id' => 3,
'name' => 'joe'
]
];
$res = array_reduce($arr, function($str, $val) {
return $str .= $val['name'];
});
echo $res; // 迭代调用,将数组的 name 拼接到字符串 $str 中
 
// 还有第三个参数,其实上例中,在第一次迭代的时候,$str 是空的,那么第三个参数,如果将此参数赋给 $str
$res = array_reduce($arr, function($str, $val) {
return $str .= $val['name'];
}, 'result:');
echo $res;

array_walk 函数的介绍

使用自定义函数对数组的元素做回调处理
格式: array_walk(array, callback)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$arr = [
[
'id' => 1,
'name' => 'zhang',
],
[
'id' => 2,
'name' => 'lisi'
],
[
'id' => 3,
'name' => 'joe'
]
];
array_walk($arr, function(&$val, $key) {
return $val['id'] += 10;
});
print_r($arr); // 回调函数中的第一个参数为数组值,第二个为键,原数组改变,返回值为 bool

PHP array 操作函数的更多相关文章

  1. dedecms功能性函数封装(XSS过滤、编码、浏览器XSS hack、字符操作函数)

    dedecms虽然有诸多漏洞,但不可否认确实是一个很不错的内容管理系统(cms),其他也不乏很多功能实用性的函数,以下就部分列举,持续更新,不作过多说明.使用时需部分修改,你懂的 1.XSS过滤. f ...

  2. byte数据的常用操作函数[转发]

    /// <summary> /// 本类提供了对byte数据的常用操作函数 /// </summary> public class ByteUtil { ','A','B',' ...

  3. PHP常用的文件操作函数集锦

    以下是个人总结的PHP文件操作函数.当然,这只是部分,还有很多,我没有列出来. 一 .解析路径: 1 获得文件名:basename();给出一个包含有指向一个文件的全路径的字符串,本函数返回基本的文件 ...

  4. JavaScript中常见的数组操作函数及用法

    JavaScript中常见的数组操作函数及用法 昨天写了个帖子,汇总了下常见的JavaScript中的字符串操作函数及用法.今天正好有时间,也去把JavaScript中常见的数组操作函数及用法总结一下 ...

  5. Runtime机制之结构体及操作函数

    一.动态语言 Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理.这种动态语言的优势在于:具有灵活性,比如:消息转发,方法交换等.它有一个运行时系统Ob ...

  6. php文件夹与文件目录操作函数

    在php中一些常用的文件夹/文件目录操作函数总结. php文件夹操作函数 string basename ( string path [, string suffix] ) 给出一个包含有指向一个文件 ...

  7. PHP 面试时常考的文件操作函数

    前两天面试的时候,笔试要求写一些文件操作类函数,什么遍历目录获取文件扩展名之类的,回来后大致总结了一下PHP中一些常见的文件操作函数分享一下. 1.使用递归删除目录及目录下所有文件的方法. funct ...

  8. mongo的runCommand与集合操作函数的关系

    除了特殊注释外,本文的测试结果均基于 spring-data-mongodb:1.10.6.RELEASE(spring-boot-starter:1.5.6.RELEASE),MongoDB 3.0 ...

  9. STL容器能力一览表和各个容器操作函数异常保证

    STL容器能力一览表 Vector Deque List Set Multiset map Multimap 典型内部 结构 dynamic array Array of arrays Doubly ...

随机推荐

  1. 全国高校网安联赛Web专场~WriteUp

    1.Sign 题目:Good Luck!flag{X-nuca@GoodLuck!} Flag直接写在题目上了,flag{X-nuca@GoodLuck!} 2.BaseCoding 提示:这是编码不 ...

  2. Linux权限管理.md

    Linux 文件的权限 Linux文件权限简介 Linux 文件或目录的属性主要包括:文件或目录的节点.种类.权限模式.链接数量.所归属的用户和用户组.最近访问或修改的时间等内容.具体情况如下: # ...

  3. CSS让图片垂直居中的几种技巧

    在网页设计过程中,有时候会希望图片垂直居中的情况.而且,需要垂直居中的图片的高度也不确定,这就会给页面的布局带来一定的挑战.下面总结了一下,曾经使用过的几种方法来使图片垂直居中,除了第一种方法只限于标 ...

  4. Redis学习笔记~conf自主集群模式

    回到目录 Redis自主提供了集群模式,当然也只是比较简单的读写分离模式,或者叫主从模式,它在各个redis服务端自己做数据同步机制,当然就是将主服务端的信息同步到各个slave服务器上,在客户端集成 ...

  5. 利用python将二值csv格式转换为矩阵

    #!/usr/bin/env python # coding:utf-8 #import pandas as pd, numpy as np; ''' 将csv文件转换为对应的邻接矩阵mat ''' ...

  6. Caliburn.Micro学习笔记(五)----协同IResult

    Caliburn.Micro学习笔记目录 今天说一下协同IResult 看一下IResult接口 /// <summary> /// Allows custom code to execu ...

  7. 为什么目前没有"成熟"的cookie插件?

    一.序言 最近真是挺忙的啊,导致也挺久没有时间来看看园中各位大神的文章,只能感慨业务真尼玛的多,所以在此写下一篇文章来大话最近工作和学习上面的一点点收获体会,希望大家能够有所收获,这篇文章虽然说是一篇 ...

  8. 延迟容忍网络(Delay-tolerant networking)

    标签: 网络networking存储工作network路由器 2012-03-24 10:01 3702人阅读 评论(0) 收藏 举报 分类: 计算机网络(12) 版权声明:本文为博主原创文章,对文章 ...

  9. IEEE 754 浮点数机器表示标准

    32位字长浮点数: 共32位 1 8 23 符号位 解码 尾数 0 +    1 - 移127码 原码,隐含小数点前的首位1 不同数据类型之间转换时,隐藏着一些不容易被察觉的错误,比如int 和 un ...

  10. 安卓 service

    public class MyService extends Service { public MyService() { } @Override public IBinder onBind(Inte ...