`
.Aky.
  • 浏览: 32364 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

复习下数组函数

    博客分类:
  • PHP
 
阅读更多

1、array_chunk() 将一个数组分割成多个。ps:第一个参数是需要分割的数组;函数的第二个参数是决定每组元素的个数;第三个可选参数则是布尔值,用来结果数组是否使用原有数组的键名,设置false则是从零开始的索引数组

 

2、array_combine()  通过合并两个大小相同的数组来创建一个新的数组(返回一个新数组),其中一个数组的值作为新数组的键名,另外一个数组的值作为新数组的值。ps:如果其中一个数组为空,或者大小不相同,返回false。

 

3、array_count_values() 统计一个数组 值出现的次数。返回一个以原数组值为键名,原数组值出现的次数作为为值的新数组。

 

4、array_diff() 通过值进行对比,计算数组的差集。第一个参数为要对比的数组,第二个参数为对比数组,接下来是可选的对比数组。返回一个值在对比数组存在,在其它参数数组中不存在的新数组。

 

5、array_diff_assoc() 键名和值都要进行对比,计算数组的差集(索引检查计算数组差集)。和array_diff函数唯一不同的就是,是键名和值都要行对比。返回一个键名和值在要对比数组存在,在其它参数数组中不存在的新数组。

 

6、array_diff_key() 从函数名称就可以看出,是通过键名进行对比,计算数组的差集。返回一个键名在要对比数组存在,在其它参数数组中不存在的新数组。

 

7、array_diff_uassoc() 通过一个回调函数来进行对比,计算数组的差集(索引检查计算数组差集)。 此函数与array_diff_assoc()函数唯一不同的就是多了一个必须参数(最后一个参数),是一个回调函数的名称。回调函数必须有两参数,即两个要进行对比的键名。例如:

function key_compare_func($a, $b)
{

//     在我的设定当中,正常的比较b不等于e,但是有需求提出b等于e
    if(($a === 'b' && $b === 'e') || ($a === 'e' && $b === 'b')) {
        return 0;
    }

    if ($a === $b) {
        echo '1'.$a.$b.' ';
        return 0;
    }
    echo '2'.$a.$b." ";
    return ($a > $b)? 1: -1;
}
$array2 = array("a" => "green", "b"=>"yellow", "c"=>"yellow");
$array3 = array("d" => "green", "e"=>"yellow", "f"=>"yellow");
$result = array_diff_uassoc($array2, $array3, "key_compare_func");
echo "<br />";
print_r($result);
exit();

 

8、array_diff_ukey() 用回调函数对键名比较,计算数组的差集。跟array_diff()不同的是对键名进行比较,回调函数用法也是对比参数,第一个小于第二个参数,等于第二个参数,大于第二个参数分别返回-1,0,1。

 

9、array_fill() 用指定的值填充数组。第一个参数作为起始,第二个参数表示填充的元素个数,第三个是指定填充的值。

 

10、array_filter() 使用回调函数过滤数组的单元(用户不应在回调函数中修改数组本身。例如增加/删除单元或者对 array_filter() 正在作用的数组进行 unset。如果数组改变了,此函数的行为将不可预测。)。如果自定义过滤函数返回 true,则被操作的数组的当前值就会被包含在返回的结果数组中, 并将结果组成一个新的数组。如果原数组是一个关联数组,键名保持不变。如果没有使用回调函数,则会把等值为false的单元过滤。

 

11、array_flip() 返回一个反转后的数组(交换键名和值),失败则返回NULL。如果相同的值出现多次,则最后一个值将作为反转后数组的键名,其它相同值的单元都将丢失。原数组的值类型不是字符串和整形,都将会发出一个警告,并且有问题的键/值对都不会被反转。

 

12、array_intersect() 通过值进行对比,计算数组的交集。返回一个在值需对比数组中存在,同时也在对比数组中存在(交集)的新数组,键名不变。

 

13、array_intersect_assoc() 键名和值都要进行对比,计算数组的交集。跟array_diff_assoc()类似,不同的是计算交集,array_diff_assoc()则计算差集

 

14、array_intersect_key() 通过键名进行对比,计算数组的交集。返回一个键名在需对比数组中存在,同时也在对比数组中存在(交集)的新数组。

 

15、array_intersect_uassoc()通过一个回调函数来进行对比,计算数组的交集(索引检查计算数组差集)。

与array_diff_uassoc()类似,不同的是计算交集,array_diff_uassoc则是计算差集。

 

16、array_intersect_ukey() 用回调函数对键名比较,计算数组的交集。跟array_intersect()不同的是对键名进行比较。回调函数用法也是对比参数,第一个小于第二个参数,等于第二个参数,大于第二个参数分别返回-1,0,1。

 

17、array_key_exists() 检查给定的键名或索引是否存在数组中。存在返回true,否则返回false。第一个参数是指定的键名,第二个参数是需要检查的数组。

 

18、array_keys() 返回数组的所有键名。第二个参数是指定值,返回键名,为可选参数。第三个参数设置为true,则要===第二参数的类型,返回键名,默认为false。

 

19、array_map() 将回调函数作用于数组的每一个单元上,返回一个回调函数作用后的数组。回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致。ps:使用多个数组的时候,最好数组的大小都相同,否则最小的将被用空的单元扩充。如果使用NULL作为回调函数,则会构建一个新数组。例如:

<?php
$a = array(1, 2, 3, 4, 5);
$b = array("one", "two", "three", "four", "five");
$c = array("uno", "dos", "tres", "cuatro", "cinco");

$d = array_map(null, $a, $b, $c);
print_r($d);
?>

 

 

未完待续……

 

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    c++输入输出语句与数组函数复习

    这些实验涵盖了C++的基础知识,包括基本输入输出操作、变量定义、数组的使用、循环结构、条件判断、函数定义与调用、以及字符串处理。通过这样的练习,可以帮助开发者熟练掌握C++的基本语法和编程技巧。在实际编程中...

    数组指针函数复习.cpp

    数组指针函数复习.cpp

    C语言复习题数组.pdf

    【C语言复习题数组】 数组是C语言中的基础数据结构,用于存储同类型的数据集合。在C语言中,数组的长度在编译时必须是已知的,这意味着不能动态地改变数组的大小。 1. 填空题: - `strlen(a)` 函数返回字符串的...

    aa.rar_数组、函数

    要求如下: 数组与函数 1. 实验目的:掌握数组与函数的使用方法,掌握,面向过程的程序设计方法,复习分支与循环语句的使用。...

    《C语言程序设计》C语言期末上机考试复习题+答案50道,顺序加选择,循环,数组,函数,指针

    理解指针的声明、赋值、解引用,以及指针和数组、函数的结合使用,能帮助开发者更高效地利用内存,解决复杂问题。 总的来说,这份复习资料全面覆盖了C语言的基础概念,通过这50道题目,学生可以检验自己对C语言的...

    JavaScript原生数组函数实例汇总

    在JavaScript中,创建数组可以使用Array构造函数,或者使用数组直接量[],后者是首选方法。Array对象继承自Object.prototype,对数组执行typeof操作符返回object而不是array。然而,[] instanceof Array也返回true。也...

    c语言复习资料之函数

    10. 二维数组函数调用: 给定的程序计算矩阵第一列的和,因此输出结果是16(1 + 0 + 3 + 3)。 11. 调用函数时实参与形参的关系: 实参可以是表达式,但实参与形参不会共用内存单元,它们之间是值传递。B选项描述...

    用数组定义,随机输入100以内整数,然后倒序输出

    在编程领域,数组是一种基础数据结构,用于存储一系列相同类型的元素。在这个问题中,我们被要求创建一个程序,首先使用数组来定义一个可以容纳100个整数的空间,然后利用随机数生成器填充这些位置,最后按照倒序的...

    C语言第五章复习题 5 数组.doc

    C语言第五章复习题 5 数组知识点 C语言中的数组是指一组具有相同数据类型的变量的集合,所有的元素都可以通过一个共同的名称访问。数组是一种数据结构,用于存储具有相同数据类型的一组数据。 1. 对数组的描述正确...

    Java程序设计基础:一维数组应用数组作为方法形参.pptx

    复习:方法定义的语法 数组作为方法的形参 修饰符 返回值类型 方法名(参数列表){ //方法体 } 基本类型 引用类型 基本类型 引用类型 任务:编写方法实现下列一维数组的基本操作 数组作为方法的形参 任务1、使用...

    C语言函数指针复习小结

    - 指针、数组和函数声明可以组合,但不是任意组合,比如函数不能返回数组。 - 在解析组合声明时,遵循“从里到外”的原则,先处理括号内的内容,再考虑*号的影响。 - 解析复杂声明时,通常使用右左法则:从未定义...

    Java基础复习笔记01数组_内存形式_父子_内存控制

    ### Java基础复习笔记01:数组、内存形式、父子关系及内存控制 #### 1. 前言 本文档旨在回顾并总结Java基础知识中关于数组、内存管理、对象继承等核心概念的理解与实践。作者希望通过这篇笔记加深对Java基础理论的...

    计算机等级考试复习指导:计算机二级C++数组、指针与引用篇 (2).pdf

    计算机等级考试复习中,C++的数组、指针与引用是重要的知识点,它们构成了C++编程基础的核心。这里主要讨论一维数组、二维数组以及字符数组。 一维数组是C++中最基本的数据结构之一,它是由同一类型元素按顺序排列...

    oc中数组排序

    为了更好地复习和巩固OC中的数组排序,可以创建一个练习项目,模拟实际场景,比如根据用户输入的年龄排序一个人物数组,或者根据日期对事件进行排序等。通过编写测试用例,检查不同排序方法的正确性和性能差异。 ...

    Php复习函数集.pdf

    Implode 函数用于将数组转换为字符串,例如,Implode(" ", $arr) 将数组 $arr 转换为字符串,并以空格分隔符连接各个元素。 8. Strtoupper 函数 Strtoupper 函数用于将字符串转换为大写,例如,Strtoupper("hello ...

    个人整理-计算机二级Excel常考函数复习重点

    个人整理-计算机二级Excel常考函数复习重点 1. 单条件求和—— SUMIF 函数 如要统计 C列中的数据 , 要求统计条件是 B 列中数据为 "条件一 " 。并将结 果放在 C6 单元格中,我们只要在 C6 单元格中输入公式“ =...

    计算机等级考试复习指导:计算机二级C++数组、指针与引用篇.docx

    计算机等级考试复习中,C++的数组、指针与引用是重要的知识点,它们构成了C++编程基础的核心。这里主要讨论一维数组、二维数组、字符数组以及与之相关的字符串操作。 一维数组是C++中基本的数据结构之一,用于存储...

    计算机等级考试复习指导:计算机二级C++数组、指针与引用篇.pdf

    【计算机等级考试复习指导:计算机二级C++数组、指针与引用篇】 在计算机二级C++考试中,数组、指针和引用是重要的基础知识。数组是存储同类型数据的集合,分为一维数组、二维数组以及多维数组。 1. 一维数组 - ...

    计算机等级考试复习指导:计算机二级C++数组、指针与引用篇 (2).docx

    计算机等级考试复习中,C++的数组、指针与引用是重要的知识点,它们构成了C++编程基础的关键部分。数组在C++中是用来存储同类型数据集合的结构,分为一维、二维以及多维数组。 一维数组是线性数据结构,它的定义...

    C语言复习题及答案第七章数组解读.pdf

    - **引用**:字符数组可以像一维数组那样引用,但通常用于处理字符串时,我们使用字符串处理函数,如`strcpy()`、`strlen()`等。 - **初始化**:字符数组可以初始化为字符串,如`char s[] = "Hello";`。 4. **...

Global site tag (gtag.js) - Google Analytics