`
bardo
  • 浏览: 379126 次
  • 性别: Icon_minigender_1
  • 来自: 上海
博客专栏
D1407912-ab64-3e76-ae37-b31aa4afa398
浅述PHP设计模式
浏览量:11824
9d6df9f7-91da-3787-a37c-0e826525dd5d
Zend Framewor...
浏览量:10132
85b628bd-a2ed-3de2-a4b1-0d34985ae8b6
PHP的IDE(集成开发环...
浏览量:9522
社区版块
存档分类
最新评论

PHP数组函数(按使用频度排序)

    博客分类:
  • PHP
阅读更多

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 — 带索引检查计算数组的交集,用回调函数比较数据和索引

 

 

0
0
分享到:
评论

相关推荐

    PHP 数组的常用函数

    7. 排序数组 - `sort()`: 对数值数组进行升序排序。 - `rsort()`: 对数值数组进行降序排序。 - `asort()`: 对关联数组按值进行升序排序,保留键。 - `arsort()`: 对关联数组按值进行降序排序,保留键。 - `ksort()`:...

    Labview应用技术 数组函数的练习(课堂实训).docx

    2. **程序框图编程**:在程序框图中构建逻辑,包括For循环、随机数生成器、数组函数等,确保它们按预期工作。 3. **分析与总结**:完成实验后,总结所使用的数组函数,例如“创建数组”、“数组大小”、“数组最大值...

    C语言程序设计-编写函数fun对主程序中用户输入的具有10个数据的数组a按由大到小排序,并在主程序中输出排序结果;

    C语言程序设计-编写函数fun对主程序中用户输入的具有10个数据的数组a按由大到小排序,并在主程序中输出排序结果;

    数组函数子VI

    1、创建数组及数组函数 (1)程序前面板设计 a) 添加一个数组控件:控件→新式→数组、矩阵与族→数组,标签为“数组”。 b) 将数值显示控件嵌入数组框架中,将数组维数设置为2,将成员数量设置为2行3列,如图2-1所...

    长安大学数组函数实验报告

    整个实验报告的编写,展示了学生们在C语言数组和函数使用上的进步。从杨辉三角形到冒泡排序,学生们逐渐深入理解了数组的不同应用,掌握了如何通过算法实现程序逻辑。这不仅仅是对知识的积累,更是对学生编程能力的...

    最新单片机仿真 用数组作函数参数控制流水花样

    最新单片机仿真 用数组作函数参数控制流水花样最新单片机仿真 用数组作函数参数控制流水花样最新单片机仿真 用数组作函数参数控制流水花样最新单片机仿真 用数组作函数参数控制流水花样最新单片机仿真 用数组作函数...

    Labview二维数组排序

    不要看分数高,这个程序绝对可以对得起大家的分数。这个楼主的研究哈!反正下了评价后分数可以返还的................

    数组函数.zip

    9. **并行和分布式计算**:对于大型数据集,可以使用并行或分布式数组函数,如Python的`multiprocessing`库,或者大数据处理框架如Apache Spark。 10. **数组函数的应用**:在数据分析(如统计计算)、机器学习(如...

    LabVIEW二维数组排序.rar

    1. **按行排序**:如果你需要按照数组的每一行进行排序,可以使用“排序”函数,它位于“数组”函数选板的“操作”子选板。选择“行”作为排序依据,然后选择升序或降序排列。这会根据每行的元素值重新排列整个数组...

    [Labview]用数组创建函数创建一个二维数组显示件,成员为:

    用数组创建函数创建一个二维数组显示件,成员为: 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 多维数组的排序问题 根据二维数组中某个项排序

    array_multisort会根据这些参数重新排序数组的值。 在多维数组排序的上下文中,array_multisort可以用来根据二维数组中的某个子数组的特定字段进行排序。例如,假设我们有一个二维数组,每个子数组包含地区信息以及...

    ExcelVBA数组函数使用基础.pdf

    ExcelVBA数组函数使用基础.pdf

    易语言两种文本型数值数组去重复并排序源码

    3. 当遍历完整个数组后,从头节点开始,按顺序读取节点的数值,即得到去重并排序后的结果。 ### 易语言中的实现细节 在易语言中,数组操作和数据结构的实现与其他高级语言有所不同。例如,没有内置的链表结构,但...

    关于WinCC自定义返回数组函数书写规则正确写法.rar

    本教程将详细阐述如何在C++中创建一个模糊控制DLL,并在WinCC中正确调用该DLL,特别是涉及自定义返回数组函数的书写规则。 首先,我们需要了解DLL的基本概念。DLL是一种共享库,它可以包含执行代码和资源,多个程序...

    PHP实现的自定义数组排序函数与排序类示例

    使用`uasort()`函数时,将数组和自定义的比较函数名作为参数传入,`uasort()`根据`compare_arr`函数的返回值来重新排序数组。 ### PHP自定义排序类 除了单独的排序函数之外,PHP还支持通过面向对象的方式定义排序...

    C语言中二维数组作为函数参数来传递的三种方法

    这样,在函数体中,我们可以使用str[i]来访问二维数组的每个元素。 方法二:形参声明为指向数组的指针 在这种方法中,我们可以将函数参数声明为指向数组的指针。例如: ```c void func(int n, char (*str)[5]) { ...

    php数组函数序列之ksort()对数组的元素键名进行升序排序,保持索引关系

    它与其他数组函数如 `asort()`(按值升序排序并保持索引)、`ksort()` 的反向版本 `krsort()`(按键名降序排序并保持索引)一起,构成了 PHP 排序功能的重要组成部分。 了解并熟练掌握 `ksort()` 函数的使用,对于...

    指针数组为字符串排序:1、冒泡排序 2、快速排序

    指针数组为字符串排序,char* str[] = { "beijing","guangdong","shanghai" };进行排序,内涵冒泡排序和快速排序,原理:更改指针指向

    单片机C语言实例9-用数组作函数参数控制流水花样.zip

    本实例“单片机C语言实例9-用数组作函数参数控制流水花样”着重讲解如何利用数组作为函数参数来实现对单片机LED流水灯效果的控制。下面将详细阐述这一知识点。 首先,我们需要理解单片机中的数组。在C语言中,数组...

    php处理二维数组(去除重复项,排序,转换,去空白等)

    这些函数允许用户自定义排序逻辑,分别用于保持键名不变、按键名排序和按值排序。 ```php function custom_sort($a, $b) { return $a - $b; // 自定义排序规则 } $a = [5, 3, 1, 4, 2]; usort($a, "custom_sort")...

Global site tag (gtag.js) - Google Analytics