PHP数组函数较多,初学者很多都记不住,经常会要用时临时查手册。但这是很不好的。这是因为,如果我们熟练掌握了,那么,程序中会少写大量的循环结构。并且,还可以优化程序的速度。
PHP的数组是PHP语言的灵魂之一。有以下特性:
1、不同于C语言中的数组,PHP数组不管是一维还是多维,均是同一数据类型。同时,因为,PHP语言本身无指针,所以,数组是完全动态的。无需预先指定大小。
2、PHP数组同时也是key value结构,并且,这个key value可以用作队列、栈、LIST、MAP、SET,所以,PHP中也就没有队列、栈、LIST、MAP、SET这些数据类型了,只有一个Array就包括了一切。
PHP数组函数虽多,但是,如果通过分类,则每一个类别中的函数都不是很多的。数组函数共有8个大类。本文按使用频度列出了这些函数。因此,如果列出一个学习计划,则可以是。
一级:掌握 1、数组创建 2、基本操作
这此函数不到30个,是总函数的40%不到。如果分组中函数超过4个,一开始只要掌握前四个即可。
二级:掌握 3、指针操作 4、打包解包 5、队列、栈 6、回调迭代
这些函数共有16个。是总函数的20%不到。
三级:掌握 7、排序与混洗 8、集合操作
这些函数中,除了排序与混洗的基本函数,其它函数一律不需要记住的,只要知道有这些函数即可。用时再查手册,绝对没有问题。
PHP数组函数(按使用频度排序)
1、数组创建:
array — 新建一个数组
range — 建立一个包含指定范围单元的数组
array_fill — 用给定的值填充数组
array_fill_keys — 使用指定的键和值填充数组
array_combine — 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值
2、基本操作
2.1、读取
key — 从关联数组中取得键名
list — 把数组中的值赋给一些变量
array_keys — 返回数组中所有的键名
array_values — 返回数组中所有的值
array_filter — 用回调函数过滤数组中的单元
array_chunk — 将一个数组分割成多个
array_slice — 从数组中取出一段
array_rand — 从数组中随机取出一个或多个单元
2.2、计算
count — 计算数组中的单元数目或对象中的属性个数
array_sum — 计算数组中所有值的和
array_count_values — 统计数组中所有的值出现的次数
array_product — 计算数组中所有值的乘积
2.3、修改
array_unique — 移除数组中重复的值
array_pad — 用值将数组填补到指定长度
array_map — 将回调函数作用到给定数组的单元上
array_flip — 交换数组中的键和值
array_change_key_case — 返回字符串键名全为小写或大写的数组
array_reduce — 用回调函数迭代地将数组简化为单一的值
2.4、搜索
in_array — 检查数组中是否存在某个值
array_search — 在数组中搜索给定的值,如果成功则返回相应的键名
array_key_exists — 检查给定的键名或索引是否存在于数组中
array_replace — 使用传递的数组替换第一个数组的元素
array_splice — 把数组中的一部分去掉并用其它值取代
array_replace_recursive — 使用传递的数组递归替换第一个数组的元素
3、指针操作
each — 返回数组中当前的键/值对并将数组指针向前移动一步
next — 将数组中的内部指针向前移动一位
current — 返回数组中的当前单元
pos — current 的别名
prev — 将数组的内部指针倒回一位
reset — 将数组的内部指针指向第一个单元
end — 将数组的内部指针指向最后一个单元
sizeof — count 的别名
4、打包解包
compact — 建立一个数组,包括变量名和它们的值
extract — 从数组中将变量导入到当前的符号表
5、队列、栈
array_pop — 将数组最后一个单元弹出(出栈)
array_push — 将一个或多个单元压入数组的末尾(入栈)
array_unshift — 在数组开头插入一个或多个单元
array_shift — 将数组开头的单元移出数组
6、回调迭代
array_walk_recursive — 对数组中的每个成员递归地应用用户函数
array_walk — 对数组中的每个成员应用用户函数
7、排序与混洗
7.1、基本操作
shuffle — 将数组打乱
array_multisort — 对多个数组或多维数组进行排序
array_reverse — 返回一个单元顺序相反的数组
7.2、基本排序
sort — 对数组排序
rsort — 对数组逆向排序
usort — 使用用户自定义的比较函数对数组中的值进行排序
7.2、键名排序
ksort — 对数组按照键名排序
krsort — 对数组按照键名逆向排序
uksort — 使用用户自定义的比较函数对数组中的键名进行排序
7.3、保持索引关系排序
asort — 对数组进行排序并保持索引关系
arsort — 对数组进行逆向排序并保持索引关系
uasort — 使用用户自定义的比较函数对数组中的值进行排序并保持索引关联
7.4、自然排序
natsort — 用“自然排序”算法对数组排序
natcasesort — 用“自然排序”算法对数组进行不区分大小写字母的排序
8、集合操作
8.1、并集
array_merge — 合并一个或多个数组
array_merge_recursive — 递归地合并一个或多个数组
8.2、差集
array_diff — 计算数组的差集
array_diff_assoc — 带索引检查计算数组的差集
array_diff_uassoc — 用用户提供的回调函数做索引检查来计算数组的差集
array_diff_key — 使用键名比较计算数组的差集
array_diff_ukey — 用回调函数对键名比较计算数组的差集
array_udiff — 用回调函数比较数据来计算数组的差集
array_udiff_assoc — 带索引检查计算数组的差集,用回调函数比较数据
array_udiff_uassoc — 带索引检查计算数组的差集,用回调函数比较数据和索引
8.3、交集
array_intersect — 计算数组的交集
array_intersect_assoc — 带索引检查计算数组的交集
array_intersect_uassoc — 带索引检查计算数组的交集,用回调函数比较索引
array_intersect_key — 使用键名比较计算数组的交集
array_intersect_ukey — 用回调函数比较键名来计算数组的交集
array_uintersect — 计算数组的交集,用回调函数比较数据
array_uintersect_assoc — 带索引检查计算数组的交集,用回调函数比较数据
array_uintersect_uassoc — 带索引检查计算数组的交集,用回调函数比较数据和索引
相关推荐
php数组函数是新手必须早些掌握的!这里很全面的希望新手程序员快速入门早日达到中级PHP程序员水平!加油!
5. 名称中包含字母"u"的函数表示这些函数使用用户自定义的比较函数来排序数组。自定义函数的逻辑需要在两个参数中返回负数表示第一个参数比第二个参数小,以此来决定排序的顺序。 接下来,我们详细分析几个主要的...
指针数组函数可以用于交换数组元素、排序数组等。 例如,定义函数swap,用于交换两个整数的值,void swap(int *x, int *y) { int temp = *x; *x = *y; *y = temp; },则可以通过指针变量x和y交换两个整数的值。 六...
排序函数可以按不同的规则对数组进行排序。 - **sort()**: 按照升序对数组进行排序。 - **rsort()**: 按照降序对数组进行排序。 - **ksort()**: 按照键名升序对数组进行排序。 - **krsort()**: 按照键名降序对数组...
1、创建数组及数组函数 (1)程序前面板设计 a) 添加一个数组控件:控件→新式→数组、矩阵与族→数组,标签为“数组”。 b) 将数值显示控件嵌入数组框架中,将数组维数设置为2,将成员数量设置为2行3列,如图2-1所...
- **`array_multisort` 的使用**: 此函数不仅可以排序数组,还可以保持数组之间的关联性,非常适合处理多维数组排序问题。 2. **性能优化**: - **减少内存消耗**: 如果 `$arr` 数组非常大,可以考虑直接在 `...
最新单片机仿真 用数组作函数参数控制流水花样最新单片机仿真 用数组作函数参数控制流水花样最新单片机仿真 用数组作函数参数控制流水花样最新单片机仿真 用数组作函数参数控制流水花样最新单片机仿真 用数组作函数...
同时,为了熟悉和掌握各种数组函数,你可以通过LabVIEW的帮助文档(按Ctrl+H快捷键)查看每个函数的详细说明和示例。 在实训过程中,还可以尝试拓展这个任务,例如: 1. 实现动态计算:当用户修改数组时,立即更新...
不要看分数高,这个程序绝对可以对得起大家的分数。这个楼主的研究哈!反正下了评价后分数可以返还的................
9. **并行和分布式计算**:对于大型数据集,可以使用并行或分布式数组函数,如Python的`multiprocessing`库,或者大数据处理框架如Apache Spark。 10. **数组函数的应用**:在数据分析(如统计计算)、机器学习(如...
用数组创建函数创建一个二维数组显示件,成员为: 4 5 6 1 2 3 3 4 5 6 1 2 2 3 4 5 6 1 1 2 3 4 5 6 编程将上述创建的数组转置为: 1 2 3 4 2 3 4 5 3 4 5 6 4 5 6 1 5 6 1 2 6 1 2 3
本篇文章将深入探讨如何使用PHP实现自定义数组排序,包括自定义排序函数和排序类的使用。 首先,让我们看看自定义数组排序函数。在PHP中,`uasort()` 函数允许我们根据自定义比较函数对关联数组进行排序。在给定的...
在排序数组$a时,使用rsort()能够将数组$a按照从大到小的顺序排列。这样做的好处是便于后续按照'nums'键值降序排列原数组$b。 4. 使用array_flip()翻转数组 array_flip()函数用于交换数组中的键和值。在排序过程中...
数组函数封装,可以支持多种类型的呀,所谓数组,是有序的元素序列。 [1] 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。...
3. 当遍历完整个数组后,从头节点开始,按顺序读取节点的数值,即得到去重并排序后的结果。 ### 易语言中的实现细节 在易语言中,数组操作和数据结构的实现与其他高级语言有所不同。例如,没有内置的链表结构,但...
`array_key_exists()` 检查数组中是否存在特定键,`array_unique()` 去除数组中的重复值,`array_reverse()` 反转数组,以及 `asort()`、`ksort()`、`usort()` 等用于排序数组的函数。 了解并熟练运用这些数组函数...
"程序设计-数组作为函数参数(选择排序)" 在程序设计中,数组作为函数参数是一个重要的概念。数组元素可以作为函数实参数组元素可以...在选择排序算法中,我们使用数组作为函数参数,实现了数组元素的排序和操作。
本教程将详细阐述如何在C++中创建一个模糊控制DLL,并在WinCC中正确调用该DLL,特别是涉及自定义返回数组函数的书写规则。 首先,我们需要了解DLL的基本概念。DLL是一种共享库,它可以包含执行代码和资源,多个程序...
本文将深入探讨如何在函数中使用数组作为参数以及如何通过函数返回数组。 首先,我们要了解函数通过数组作为参数的情况。在C语言中,当我们声明一个函数并希望接受数组作为参数时,实际上传递的是数组的首元素地址...