### PHP 数组函数分类 PHP 是一种广泛使用的脚本语言,尤其在 Web 开发领域有着不可替代的地位。其中,PHP 的数组处理能力非常强大,提供了丰富的内置函数来操作数组。根据给定的内容,我们将对 PHP 的数组函数进行分类,并详细解释每一类中的典型函数。 #### 统计(Stat) 这类函数主要用于统计数组的各种属性,如元素数量、值的总和等。 - **count()**: 计算数组中元素的数量。支持递归统计多维数组。 - `count($a,1)`:计算 `$a` 中的所有元素,包括子数组的元素数量。 - `count($a,COUNT_RECURSIVE)`:等同于 `count($a,1)`,用于递归统计数组中所有元素的数量。 - **array_product()**: 计算数组中所有值的乘积。 - **array_sum()**: 计算数组中所有值的和。 - **array_count_values()**: 对数组中所有值进行计数,返回一个键为原数组值,值为出现次数的新数组。 #### 搜索(Search) 此类函数用于在数组中查找特定的键或值。 - **isset()**: 检测变量是否设置并且非空。 - 示例:`$a = array('a' => '1', 'b' => '2'); $b = 'a'; $c = isset($a[$b]);` - **array_key_exists()**: 检查数组中是否存在指定的键名。 - **in_array()**: 判断一个值是否存在于数组中。 - **array_search()**: 返回数组中某个值的键名,如果值不存在,则返回 `false`。 #### 排序(Sort) 排序函数可以按不同的规则对数组进行排序。 - **sort()**: 按照升序对数组进行排序。 - **rsort()**: 按照降序对数组进行排序。 - **ksort()**: 按照键名升序对数组进行排序。 - **krsort()**: 按照键名降序对数组进行排序。 - **asort()**: 按照值升序对数组进行排序。 - **arsort()**: 按照值降序对数组进行排序。 - **natsort()**: 使用自然顺序对数组进行排序。 - **natcasesort()**: 不区分大小写地使用自然顺序对数组进行排序。 - **usort()**: 使用用户自定义的比较函数进行排序。 - **uksort()**: 使用用户自定义的比较函数对键名进行排序。 - **uasort()**: 使用用户自定义的比较函数对值进行排序。 - **shuffle()**: 打乱数组中的元素顺序。 - **array_reverse()**: 反转数组中的元素顺序。 - **array_multisort()**: 同时对多个数组进行排序。 #### 获取部分(Part) 这些函数用于从数组中获取部分数据或处理部分数据。 - **array_chunk()**: 将数组分割成多个指定长度的数组块。 - **array_filter()**: 使用回调函数过滤数组中的元素。 - **array_keys()**: 获取数组中的所有键名。 - **array_slice()**: 获取数组的一部分。 - **array_values()**: 获取数组中的所有值。 - **array_shift()**: 删除数组中的第一个元素,并返回该元素。 - **array_unshift()**: 在数组的开头插入一个或多个元素。 - **array_fill_keys()**: 使用指定的值填充数组中的指定键。 #### 单元操作(Unit) 此类函数主要涉及单个元素的操作。 - **array_pop()**: 移除并返回数组最后一个元素。 - **array_rand()**: 随机选取数组中的一个或多个元素。 - **current()**: 返回当前数组元素。 - **each()**: 获取当前元素的键名和值。 - **end()**: 将数组内部指针指向最后一个元素,并返回其值。 - **key()**: 获取当前数组元素的键名。 - **list()**: 从数组中提取值到变量列表。 - **next()**: 将数组内部指针向前移动一位,并返回新的值。 - **prev()**: 将数组内部指针向后移动一位,并返回其值。 - **reset()**: 将数组内部指针指向第一个元素,并返回该元素的值。 - **foreach()**: 遍历数组中的每个元素。 #### 合并(Merge) 合并函数允许将多个数组组合成一个新数组。 - **array_combine()**: 使用两个数组分别作为键名和值创建一个新数组。 - **array_merge()**: 合并一个或多个数组。 - **array_merge_recursive()**: 递归地合并一个或多个数组。 - **array_push()**: 将一个或多个元素压入数组的末尾。 - **array_unshift()**: 将一个或多个元素插入数组的开头。 #### 处理(Process) 处理函数提供了一系列工具来处理数组中的元素。 - **array_fill()**: 使用指定的值填充数组。 - **array_flip()**: 交换数组中的键和值。 - **array_map()**: 对数组中的每个元素应用回调函数。 - **array_pad()**: 用指定值填充数组到指定长度。 - **array_splice()**: 删除数组中的一部分,并可同时插入新的元素。 - **array_unique()**: 移除数组中的重复值。 - **array_walk_recursive()**: 对数组中的每个元素递归地应用回调函数。 - **array_walk()**: 对数组中的每个元素应用回调函数。 - **compact()**: 创建一个包含变量名称和对应值的新数组。 - **range()**: 创建一个包含指定范围内的值的数组。 #### 交集(Intersection) 交集函数用于找到两个或多个数组中的共同元素。 - **array_intersect_assoc()**: 返回两个或多个数组中的共同元素及其键名。 - **array_intersect_key()**: 返回两个或多个数组中的共同键名对应的元素。 - **array_intersect_uassoc()**: 使用用户自定义的比较函数返回两个或多个数组中的共同元素及其键名。 - **array_intersect_ukey()**: 使用用户自定义的比较函数返回两个或多个数组中的共同键名对应的元素。 - **array_intersect()**: 返回两个或多个数组中的共同元素。 #### 差集(Diff) 差集函数用于找出两个或多个数组之间的差异。 - **array_diff()**: 返回相对于第一个数组中不在其他数组中的元素。 - **array_udiff_assoc()**: 使用用户自定义的比较函数返回相对于第一个数组中不在其他数组中的元素。 - **array_udiff_uassoc()**: 使用用户自定义的比较函数返回相对于第一个数组中不在其他数组中的元素及键名。 - **array_udiff()**: 使用用户自定义的比较函数返回相对于第一个数组中不在其他数组中的元素。 - **array_diff_assoc()**: 返回相对于第一个数组中不在其他数组中的元素及键名。 - **array_diff_key()**: 返回相对于第一个数组中不在其他数组中的键名对应的元素。 - **array_diff_uassoc()**: 使用用户自定义的比较函数返回相对于第一个数组中不在其他数组中的元素及键名。 - **array_diff_ukey()**: 使用用户自定义的比较函数返回相对于第一个数组中不在其他数组中的键名对应的元素。 #### 其他(Other) 此外还有一些不属于上述分类但非常有用的函数。 - **array_reduce()**: 对数组中的值迭代地应用一个回调函数,最终返回一个单一的结果。 - **extract()**: 将数组中的键名作为变量名,值作为变量值导入到当前作用域。 - **array()**: 创建一个数组。 通过以上分类和详细解释,我们可以更好地理解和掌握 PHP 中各种数组函数的功能与用法,从而更高效地进行编程工作。





























2 搜索 Search
3 排序 Sort
4 获取数组的部分内容 Part
5 单元 Unit //获取数组的某个元素
6 合并数组 Merge //将两个数组和为一个
7 加工出所需数组 Process
8 交集 Intersection
9 差集 Diff
10 其他 Other
Stat
count 计算数组中的单元数目或对象中的属性个数
sizeof count() 的别名
array_product 计算数组中所有值的乘积
array_sum 计算数组中所有值的和
array_count_values 统计数组中所有的值出现的次数
count( $a,1 ) 递归计算多维数组中的数组的元素个数
#count( $a,COUNT_RECURSIVE ) 不在使用,递归计算多维数组中的数组的元素个数,COUNT_RECURSIVE 改为 1
Search
一 搜索键是否存在
$a[$b] $a = array( 'a'=>'1','b'=>'2' ); $b = 'a'; $c = isset( $a[$b] );
array_key_exists 检查给定的键名或索引是否存在于数组中
二 搜索值是否存在
in_array 检查数组中是否存在某个值
array_search 在数组中搜索给定的值,如果成功则返回相应的键名
Sort
sort 对数组排序
rsort 对数组逆向排序
ksort 对数组按照键名排序
krsort 对数组按照键名逆向排序
asort 对数组进行排序并保持索引关系
剩余7页未读,继续阅读


- 粉丝: 0
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 浅述计算机科学与技术的方法论.docx
- 遵义市运用大数据服务老干部.docx
- 浅析互联网思维下大学生创新创业意识培养路径.docx
- 物联网关键技术及应用.docx
- 图与网络分析研究例题解.doc
- 移动互联网网络融合策略控制研究.docx
- CAM技术应用现状、问题和发展趋势浅析《机械CAD与CAM》课程.doc
- 基于51单片机的电阻炉温度测量与控制系统方案设计书.doc
- 大型网络监控系统方案.doc
- 电子通信工程中解决电子干扰问题的对策探讨.docx
- 通信行业研究与发展专题报告-拥抱趋势-超配龙头.docx
- 通信管道施工及验收技术规范.doc
- 北京航空航天大学计算机应用技术考博参考书.doc
- 教育技术装备的管理信息化.docx
- android游戏设计方案单元教学方案设计方案.doc
- ThinkPadT60软件安装实用指南.doc


