zoukankan      html  css  js  c++  java
  • php常用数组函数回顾一

    数组对于程序开发来说是一个必不可少的工具,我根据网上的常用数组函数,结合个人的使用情况,进行数组系列的总结复习。里面当然不只是数组的基本用法,还有相似函数的不同用法的简单实例,力求用最简单的实例,记住掌握常用数组函数。

    回顾一:数组操作的基本函数

    数组的键名和值(函数列表)

    array_values($arr);  获得数组的值

    array_keys($arr);  获得数组的键名

    array_flip($arr);  数组中的值与键名互换(如果有重复前面的会被后面的覆盖)

    in_array("apple",$arr);  在数组中检索apple

    array_search("apple",$arr);  在数组中检索apple ,如果存在返回键名

    array_key_exists("apple",$arr);  检索给定的键名是否存在数组中

    isset($arr[apple]):   检索给定的键名是否存在数组中

    下面是函数的细节代码

    1.array_flip()键值互换函数。

    注意点:键值重复后面的覆盖前面的

    /* array_flip(数组)键值互换(重复替换)
    *  Array ( [张三] => nickname [23] => age );//结果只剩下两个
    */ $arr = array('name'=>'张三','age'=>'23','nickname'=>'张三'); $new = array_flip($arr);//实现将数组键 和 值 互换,假若有键值重复的,就覆盖掉前面的 print_r($new);

    2.in_array('要搜索的值或者数组',数组);检测某个值或者数组是否在数组中

    /*in_array('要搜索的值或者数组',数组);
    *检测某个值或者数组是否在数组中
    */
    $arr = array('name'=>'张三','age'=>'23','nickname'=>'张三');
    if(in_array('张三',$arr)){
        echo 'got 张三';
    }//got 张三
    if(in_array(array('1','2'),$arr)){
        echo 'got this array';
    }//got this array

    3.array_search();与array_keys()的区别

    /* 
    *array_search()与array_keys()搜索某个值在数组中的键名的区别
    */
    $arr = array('name'=>'张三','age'=>'23','nickname'=>'张三');
    $res = array_search("张三",$arr);//只返回第一次匹配到的键值的名字
    $res_array = array_keys($arr,'张三');//返回匹配到的所有键值的名字
    print_r($res);//name
    print_r($res_array); //返回结果集

    4.isset()和array_key_exists()查询 某个键值在数组中 是否存在

    /*    
    *isset()和array_key_exists()都可以,但是isset搜索到键值存在时,假若说只是null则返回false,
    *也就是没有搜索到键值
    */
    
    $search_array  = array( 'first'  =>  null ,  'second'  => 4);
    $res = isset($search_array ['first']);//returns false
        $res1 = array_key_exists ('first',$search_array);//returns true
    if($res == true){
        echo "use function isset() return true"."<br/>";
    }else{
        echo 'use function isset() return false'."<br/>";
    }
    if($res1 == true){
        echo 'use function array_key_exists() return true'."<br/>";
    }else{
        echo 'use function array_key_exists() return false'."<br/>";
    } 

    注意点:

    /* 
    *isset()当里面有多个值的时候,假若有一个不存在则会返回false*,
    *当值是null的时候也是返回false
    $a  =  "test" ;  $b  =  "anothertest" ;
     
    var_dump (isset( $a ));        // TRUE
    var_dump (isset( $a ,  $b ));  // TRUE     
    
    unset ( $a );
    var_dump (isset( $a ,  $b ));  // FALSE
     
    $foo  =  NULL ;
    var_dump (isset( $foo ));      // FALSE 
    */
  • 相关阅读:
    selenium + python 环境配置 (三)之启动chrome
    selenium + python 环境配置 (二)之启动IE
    selenium + python 环境配置 (一)
    知源图四点坐标和目标图四点坐标,求透视变换矩阵
    memset()初始化为1的那些事
    NSOJ 4621 posters (离散化+线段树)
    申请到新博客了好开心
    SpringCloud之Hystrix-Dashboard监控,以及踩的坑...
    SpringBoot中在除Controller层 使用Validation的方式
    Docker安装ElasticSearch 以及使用LogStash实现索引库和数据库同步
  • 原文地址:https://www.cnblogs.com/ysjChinesePHP/p/4862212.html
Copyright © 2011-2022 走看看