• 技术文章 >后端开发 >PHP问题

    php怎么取数组中的某几位值

    青灯夜游青灯夜游2022-09-22 18:29:17原创1066

    3种获取方法:1、利用“$数组名[下标]”一个个获取。2、利用array_slice()获取连续的几位元素值,语法“array_slice(数组,开始位置,个数)”或““array_slice(数组,-位置)”。3、利用array_splice()获取连续的几位元素值,语法“array_splice(数组,开始位置,个数)”或“array_splice(数组,-位置)”。

    php入门到就业线上直播课:进入学习

    本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

    php提供了多种取数组中某几位值的方法,下面我们一起看看。

    情况一:获取不连续的几位元素值

    在php中,可以利用“$数组名[下标]”语句一个个获取。

    $数组名[下标]”可以访问数组中的指定下标的一个元素

    <?php
    header("Content-type:text/html;charset=utf-8");
    $arr= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
    var_dump($arr);
    echo "获取第1位的元素:".$arr[0]."<br>";
    echo "获取第3位的元素:".$arr[2]."<br>";
    echo "获取第6位的元素:".$arr[5]."<br>";
    ?>

    1.png

    情况二:获取连续的几位元素值

    方法1、使用array_slice()函数

    array_slice()函数就是PHP提供的用来截取数组的一个函数,可以从数组中提取出一个片段。

    array_slice($array,$start,$length,$preserve)

    该函数支持2个必需的参数:$array$start,两个可省略的参数$length$preserve

    参数$array就不必介绍了吧,参数$start用于指定开始截取的位置(下标),参数$length表示截取长度(如果省略,则会从指定下标开始一直截取到数组末尾)。

    <?php
    header("Content-type:text/html;charset=utf-8");
    $arr= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
    var_dump($arr); 
    
    echo "获取第3位开始的全部数组元素:";
    $result = array_slice($arr,2); //截取从下标2开始的全部数组元素
    var_dump($result);
    
    echo "获取第2位和第3位:";
    $result = array_slice($arr,1,2); //截取从下标1开始的两个元素
    var_dump($result);
    
    ?>

    输出结果为:

    2.png

    参数$start可为负数,则从距离 $array 末端 -start 的位置开始(即按绝对值从数组右侧开始向左侧定位),从后往前截取。例如 -2 意味着从数组的倒数第二个元素开始。

    <?php
    header("Content-type:text/html;charset=utf-8");
    $arr= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
    var_dump($arr); 
    
    echo "获取最后两位元素:";
    $result = array_slice($arr,-2);
    var_dump($result);
    
    ?>

    输出结果为:

    3.png

    2、使用array_splice()函数

    array_splice()函数可以在删除数组的一部分元素时,会将这些被删除的元素组成为一个新数组,然后返回这个新数组。

    使用array_splice($array,$start,$length)函数可以根据数组下标($start的值),截取指定长度($length的值)的数组片段。

    我们来看下面一个小例子:

    <?php
    header("Content-type:text/html;charset=utf-8");
    $arr= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
    var_dump($arr); 
    
    echo "获取第2位和第3位:";
    $result = array_splice($arr,1,2); //截取从下标1开始的两个元素
    var_dump($result);
    
    ?>

    输出结果为:

    4.png

    $start值为负,则获取最后N位元素

    <?php
    header("Content-type:text/html;charset=utf-8");
    $arr= array("香蕉","苹果","梨子","橙子","橘子","榴莲");
    var_dump($arr); 
    
    echo "获取最后3位元素:";
    $result = array_splice($arr,-3); 
    var_dump($result);
    
    ?>

    5.png

    注意:array_splice()函数会改变原数组。

    推荐学习:《PHP视频教程

    以上就是php怎么取数组中的某几位值的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php php数组
    上一篇:php获取数组某一项的值可以吗 下一篇:php怎么检测一个字符串有几个中文
    VIP课程(WEB全栈开发)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• php数组怎么去除数字元素• php数组合并保留全部元素可以吗• php数组键名能省略吗• php数组传递是引用传值吗• php数组键可以用数字或者什么
    1/1

    PHP中文网