zoukankan      html  css  js  c++  java
  • php学习五:数组操作

    前言:由于之前接触过js,所以在学习php的时候,里面继承了js的许多方法,所以数组里面的许多操作和js很相似,但是却比js里面多的多,个人感觉php是集成数组方法最多的一个

    ,今天学习的有二十余个,如果有错误的或者疏忽的希望大神以及园友们指出来,相互交流,相互学习,一起进步。

    这个博客的代码是我在一个demo里面写的,可能用到的数组在上面,但是也不复杂,就用了几个数组。废话不多说,开扯:

    1.       array_values()返回数组中的所有值

    $array = array("name" => "zhangsan","age" => "10","age" => "10","sex" => "man");
    $item1 = array_values($array);
    print_r($item1);
    

      

     

     2.  array_keys()返回数组中的所有值

    $item2 = array_keys($array);
    
    print_r($item2);
    

      

     

    3.in_array  检查数组中是否存在某个值,返回布尔类型,地上那个值为是否是同一类型.

    $item3 = in_array("10",$array,true);
    
    print_r($item3);
    

      

    4.array_flip 交换数组中的键和值

    $item4 = array_flip($array);
    
    print_r($item4);
    

      

     

    5.count 计算数组中的单元数目或对象中的属性个数

    $item5 = count($array);
    
    print_r($item5);
    

      

     

    6.array_count_values 统计数组中所有的值出现的次数

    $item6 = array_count_values($array);
    
    print_r($item6);
    

      

     

    7.array_unique 移除数组中重复的值

    $item7 = array_unique($array);
    
    print_r($item7);
    

      

     

    8.array_reverse 返回一个单元顺序相反的新数组,第二个值为键是否翻转,

    不会改变原有的数组,只对索引数组有效

    $array1 = array(1,2,3,4,5);
    
    $item8 = array_reverse($array1,true);
     
    

      

    9.array_filter 用回调函数过滤数组中的单元

    会将值传递到回调函数中去,返回true,则函数的值会被调用

    function filter($value){
    
        if($value>3){
    
            return true;
    
        }
    
    };
    
    $item9 = array_filter($array1,"filter");
    
    print_r($item9);
    

      

    10.array_walk 使用用户自定义函数对数组中的每个元素做回调处理

    返回布尔类型(执行成功或者失败)

    function walk($value){
    
        if($value>3){
    
            echo $value." ";
    
        }
    
    };
    
    $item10 = array_walk($array1,"walk");
    

      

     

    11.array_map 为数组的每个元素应用回调函数

    回调函数在前,数组在后

    function map($value){
    
        return $value*$value;
    
    };
    
    $item11 = array_map("map",$array1);
    
    print_r($item11);
    

      

     

    12.sort 对数组排序(升序),会改变之前数组

    sort($array1);
    
    print_r($array1);
    

      

     

    13.rsort 对数组排序(降序),会改变之前数组

    rsort($array1);
    
    print_r($array1);
    

      

     

    14.array_slice 从数组中取出一段,返回截取的数值

    (函数名称,起始索引,长度,是否保留索引)

    $item14 = array_slice($array1,1,2,true);
    
    print_r($item14);
    

      

     

    15.array_splice 把数组中的一部分去掉并用其它值取代

    返回删除的内容,原数组改变

    $item15 = array_splice($array1,1,2,"房明");
    
    print_r($item15);
    
    print_r($array1);
    

      

     

    16.array_combine 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值

    两个数组的值的个数必须是一样的

    $array2 = array("name","age","sex");
    
    $array3 = array("房明","18","男");
    
    $item16 = array_combine($array2,$array3);
    
    print_r($item16);
    

      

     

    17.array_merge 合并一个或多个数组

    $item17 = array_merge($array2,$array3);
    
    print_r($item17);
    

      

     

    18.array_intersect 计算数组的交集

    $array4 = array(1,2,3,4);
    
    $array5 = array(3,4,5,6);
    
    $item18 = array_intersect($array4,$array5);
    
    print_r($item18);
    

      

     

    19.array_diff 计算数组的差集

    返回的是第一个数组当中与第二个数组当中不同的数值,不会返回第二个数组中的值

    $item19 = array_diff($array5,$array4);
    
    print_r($item19);
    

      

     

    20.array_pop 将数组最后一个单元弹出(出栈)

    返回被删除的值,改变原来的数组

    $item20 = array_pop($array4);
    
    print_r($item20);
    
    print_r($array4);
    

      

     

    21.array_push 将一个或多个单元压入数组的末尾(入栈)

    返回添加的值,改变原来的数组,(数组名称,添加数值)

    $item21 = array_push($array4,"5");
    
    print_r($item21);
    
    print_r($array4);
    

      

     

    22.array_shift 将数组开头的单元移出数组

    返回被删除的值,改变原来的数组

    $item22 = array_shift($array4);
    
    print_r($item22);
    
    print_r($array4);
    

      

     

    23.array_unshift 在数组开头插入一个或多个单元

    返回添加的值,改变原来的数组,(数组名称,添加数值)

    $item23 = array_unshift($array4,"10");
    
    print_r($item23);
    
    print_r($array4);
    

      

     

    24.array_rand 从数组中随机取出一个或多个单元

    $item24 = array_rand($array4);
    
    print_r($item24);
    

      

     

     

    25.shuffle 将数组打乱,会改变之前的数组

    $item25 = shuffle($array4);
    
    print_r($array4);
    

      

     

  • 相关阅读:
    Windows Server 2008 下解析二级域名的方法
    浅谈2D游戏设计模式--游戏剧情设计(1)
    公司做项目的几点经验总结(个人经验)
    ASP.NET 实现站内信功能(点对点发送,管理员群发)
    FusionChart 水印破解方法(代码版)
    如何使用SOIL在VS2012的 C++环境下显示图片
    C语言实现控制台中光标随意移动
    ASP.NET CMS模板培训教程
    如何用easyui+JAVA 实现动态拼凑datagrid表格(续)
    用JAVA实现插值查询的方法(算近似值,区间求法)
  • 原文地址:https://www.cnblogs.com/mmykdbc/p/6561679.html
Copyright © 2011-2022 走看看