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

    php数组可以用哪些键名

    青灯夜游青灯夜游2023-01-12 14:15:39原创140

    php数组可以用数字键名,也可用字符串键名。在PHP中,支持以数字为键名的索引数组,也支持以字符串或字符串、数字混合为键名的关联数组。索引数组的下标(键名)由数字组成,默认从0开始,每个数字对应一个数组元素在数组中的位置,不需要特别指定,PHP会自动为索引数组的键名赋一个整数值,然后从这个值开始自动递增。

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

    在PHP中,数组 array 是一组有序的变量,其中每个值被称为一个元素。每个元素由一个特殊的标识符来区分,这个标识符称为键(也称为下标)。

    数组中的每个实体都包含两项,分别是键(key)和值(value)。可以通过键值来获取相应的数组元素,这些键可以是数值键,也可以是关联键。如果说变量是存储单个值的容器,那么数组就是存储多个值的容器。

    PHP 数组比其他高级语言中的数组更加灵活,不但支持以数字为键名的索引数组,而且支持以字符串或字符串、数字混合为键名的关联数组。

    注意:PHP中数组其实是不区分索引还是关联数组,都是根据键名找到对应的键值。

    1、索引数组

    索引数组存储一系列经过组织的单个或多个值,其中的每个值都可以通过使用一个无符号整数值进行访问。

    索引数组的下标(键名)由数字组成,默认从 0 开始,每个数字对应一个数组元素在数组中的位置,不需要特别指定,PHP 会自动为索引数组的键名赋一个整数值,然后从这个值开始自动递增。

    索引数组初始化例:

    <?php  
    header("Content-type:text/html;charset=utf-8");
    //创建一个索引数组,索引数组的键是“0”,值是“苹果”  
    $fruit=array("苹果","香蕉");  
    var_dump($fruit);  
    ?>

    运行结果:

    1.png

    索引数组的三种赋值方式:

    例:

    <?php  
    //请创建一个数组变量arr,并尝试创建一个索引数组,键是0,值是苹果  
    $arr=array(0=>'苹果');  
    if( isset($arr) ) {print_r($arr);}  
    ?>

    用for与foreach可以访问到数组里面的元素,因for比较容易下面只举使用foreach的例子,

    <?php  
    $fruit=array('苹果','香蕉','菠萝');  
    foreach($fruit as $key=>$value){  
        echo '<br>第'.$key.'值是:'.$value;  
    }  
      
    ?>

    运行结果:

    第0值是:苹果
    第1值是:香蕉
    第2值是:菠萝

    注:这里$key是键值$value则是元素值

    2、关联数组

    “关联数组”是一种具有特殊索引方式的数组。使用字符串或者其他类型的值(除了NULL)来索引它。

    其实关联数组和索引数组的差别只是在键值上,关联数组的键值是字符串,并且是人为的规定,例如:

    <?php  
    //创建一个关联数组,关联数组的键“orange”,值是“橘子”  
    $fruit=array('orange'=>'橘子');  
    echo $fruit['orange'];  
    ?>

    其余初始化,赋值,foreach的用法基本相同。

    扩展知识:关联数组转索引数组

    在PHP中,可以使用array_values()函数来将关联数组转为索引数组。

    array_values() 函数的作用是返回数组中所有元素的值,使用起来非常简单,只有一个必选参数,就可以返回一个包含给定数组中所有值的数组,但不保留键名。被返回的数组将使用索引数组的形式,数组的索引从 0 开始且以 1 递增。

    array_values() 函数特别适合用于数组中元素下标混乱的数组,或者用于将关联数组转化为索引数组。

    <?php
    header("Content-type:text/html;charset=utf-8");
    $arr=array(1=>"1","a"=>"",2=>"2","b"=>0,"c"=>"blue");
    echo "原关联数组:";
    var_dump($arr);
    $res=array_values($arr);
    echo "转换后的数组:";
    var_dump($res);
    ?>

    2.png

    推荐学习:《PHP视频教程

    以上就是php数组可以用哪些键名的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php php数组
    上一篇:php怎么去掉数组元素中的html标签 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • php数组怎么将元素值转换成int整数类型• php数组怎么去除一个指定下标的元素• php数组下标怎么求和• php数组怎么把key(键)转为值• php数组怎么去除0值• php数组中怎么进行并集求和
    1/1

    PHP中文网