• 技术文章 >php教程 >php手册

    php 数组操作(增加,删除,查询,排序)等函数说明

    PHPzhongPHPzhong2018-10-08 16:36:57转载460
    php 数组增加,删除,查询,排序详细说明,需要的朋友可以参考下。

    对数组的添加(首尾数据添加(不限定条数)以及中间任意位置添加数据操作) .
    2~对数组的删除(首尾的数据删除(不限定条数)以及中间任意位置的数据删除操作,条件:对数组中间位置删除的,后面的值往前挪,接上以前的位置) .
    3~对数据的排序操作(排序操作,要的是效率) .
    4~对数组的查询(对数组中的某一数据进行查询,如果满足,则生成新的数组,这个新的数组就是满足查询条件的,条件:查询,并不是查询某一个值,还有查询某一个值满足某个条件,举个例子:查询数组中某个值大于5的,全部筛选出来)

    1、php中的数组实质上是map结构,对于索引数组,添加或删除元素,它并不重新索引。
    2、避免混合索引数组和关联数组
    其余的要求,查找php手册应该有答案。
    说实话,我一直记不住那么多函数。
    3。默认的冒泡排序,堆排序,快速排序,插入排序,二分。看你的需求情况了
    4.还是循环。

    PHP数组虽然强大,但效率也很低

    2 数组的删除,以字符串为索引的,直接删除就OK。unset
    以数字为索引的,unset删除,然后使用array_values重置数组。
    3 usort排序,可以利用callback函数自己来实现算法。效率主要看你写的算法如何。

    1~对数组的添加(首尾数据添加(不限定条数)以及中间任意位置添加数据操作) .
    arrar_unshift(数组头部添加数据)
    array_push(数组尾部添加数组)
    arrar_fill(中间任意位置添加)
    2~对数组的删除(首尾的数据删除(不限定条数)以及中间任意位置的数据删除操作,条件:对数组中间位置删除的,后面的值往前挪,接上以前的位置) .
    array_shift(数组头部删除数据)
    array_pop(数组为不删除数据)

    array_slice不会对原始数组造成任何修改,我是想说array_splice。
    刚才又查了下手册,发现array_splice功能好强大,对数组的任何位置的任何个数的增删改操作,都可以用array_splice搞定。
    关于非哈希数组重建数字索引的问题,array_merge和array_values都可以,刚才经过试验,后者更快

    什么是数组?

    在使用 PHP 进行开发的过程中,或早或晚,您会需要创建许多相似的变量。
    无需很多相似的变量,你可以把数据作为元素存储在数组中。
    数组中的元素都有自己的 ID,因此可以方便地访问它们。

    有三种数组类型:
    数值数组
    带有数字 ID 键的数组
    关联数组
    数组中的每个 ID 键关联一个值
    多维数组
    包含一个或多个数组的数组 数值数组
    数值数组存储的每个元素都带有一个数字 ID 键。

    可以使用不同的方法来创建数值数组:

    例子 1
    在这个例子中,会自动分配 ID 键:

    $names = array("Peter","Quagmire","Joe");

    例子 2
    在这个例子中,我们人工分配的 ID 键:

    $names[0] = "Peter"; 
    $names[1] = "Quagmire"; 
    $names[2] = "Joe";

    可以在脚本中使用这些 ID 键:

    代码如下:

    <?php 
    $names[0] = "Peter"; 
    $names[1] = "Quagmire"; 
    $names[2] = "Joe"; 
    echo $names[1] . " and " . $names[2] . " are ". $names[0] . "'s neighbors"; 
    ?>

    以上代码的输出:
    Quagmire and Joe are Peter's neighbors

    关联数组

    关联数组,它的每个 ID 键都关联一个值。
    在存储有关具体命名的值的数据时,使用数值数组不是最好的做法。
    通过关联数组,我们可以把值作为键,并向它们赋值。

    例子 1

    在本例中,我们使用一个数组把年龄分配给不同的人:

    代码如下:

    $ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34);

    例子 2

    本例与例子 1 相同,不过展示了另一种创建数组的方法:

    代码如下:

    $ages['Peter'] = "32"; 
    $ages['Quagmire'] = "30"; 
    $ages['Joe'] = "34";

    可以在脚本中使用 ID 键:

    代码如下:

    <?php 
    $ages['Peter'] = "32"; 
    $ages['Quagmire'] = "30"; 
    $ages['Joe'] = "34"; 
    echo "Peter is " . $ages['Peter'] . " years old."; 
    ?>

    以上脚本的输出:
    Peter is 32 years old.

    多维数组

    在多维数组中,主数组中的每个元素也是一个数组。在子数组中的每个元素也可以是数组,以此类推。

    例子 1
    在本例中,我们创建了一个带有自动分配的 ID 键的多维数组:

    代码如下:

    $families = array 
    ( 
    "Griffin"=>array 
    ( 
    "Peter", 
    "Lois", 
    "Megan" 
    ), 
    "Quagmire"=>array 
    ( 
    "Glenn" 
    ), 
    "Brown"=>array 
    ( 
    "Cleveland", 
    "Loretta", 
    "Junior" 
    ) 
    );

    如果输出这个数组的话,应该类似这样:

    代码如下:

    Array 
    ( 
    [Griffin] => Array 
    ( 
    [0] => Peter 
    [1] => Lois 
    [2] => Megan 
    ) 
    [Quagmire] => Array 
    ( 
    [0] => Glenn 
    ) 
    [Brown] => Array 
    ( 
    [0] => Cleveland 
    [1] => Loretta 
    [2] => Junior 
    ) 
    )

    例子 2
    让我们试着显示上面的数组中的一个单一的值:

    echo "Is " . $families['Griffin'][2] . " a part of the Griffin family?";
    以上代码的输出:
    Is Megan a part of the Griffin family?

    更多相关教程请访问 php编程从入门到精通全套视频教程

    声明:本文转载于:脚本之家,如有侵犯,请联系admin@php.cn删除
    专题推荐:php 数组
    上一篇:关于PHP的前途二 下一篇:php和java优势对比
    PHP编程就业班

    相关文章推荐

    • 写一段简单的PHP建立文件夹代码_php基础• php sybase_fetch_array使用方法_php基础• php学习笔记之基础知识• php+mysql实现的二级联动菜单效果详解_php技巧

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网