加入收藏 | 设为首页 | 会员中心 | 我要投稿 均轻资讯网 (https://www.ijunqing.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php数组有哪几种类型

发布时间:2022-10-26 15:04:34 所属栏目:PHP教程 来源:
导读:  php数组的类型:1、索引数组,其下标(键名)由数字组成,默认从0开始,每个数字对应一个数组元素在数组中的位置;2、关联数组,其下标(键名)由数值和字符串混合的形式组成;3、多维数组,包含一个或多个数组的
  php数组的类型:1、索引数组,其下标(键名)由数字组成,默认从0开始,每个数字对应一个数组元素在数组中的位置;2、关联数组,其下标(键名)由数值和字符串混合的形式组成;3、多维数组,包含一个或多个数组的数组。
 
  php入门到就业线上直播课:进入学习
 
  本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑
 
  数组就是一组数据的集合,把一系列数据组织起来,形成一个可操作的整体。PHP 中的数组较为复杂,但比其他许多高级语言中的数组更为灵活。
 
  数组 array 是一组有序的变量,其中每个值被称为一个元素。每个元素由一个特殊的标识符来区分,这个标识符称为键(也称为下标)。
 
  数组中的每个实体都包含两项PHP数组,分别是键(key)和值(value)。可以通过键值来获取相应的数组元素,这些键可以是数值键,也可以是关联键。如果说变量是存储单个值的容器,那么数组就是存储多个值的容器。
 
  PHP 数组比其他高级语言中的数组更加灵活,不但支持以数字为键名的索引数组,而且支持以字符串或字符串、数字混合为键名的关联数组。而在其他高级语言中,如 Java 或者 C++ 等语言的数组,只支持数字索引数组。
 
  PHP 数组的结构如下图所示:
 
  php数组的类型
 
  注意:PHP中数组其实是不区分索引还是关联数组,都是根据键名找到对应的键值
 
  1、索引数组
 
  索引数组存储一系列经过组织的单个或多个值,其中的每个值都可以通过使用一个无符号整数值进行访问。索引数组的键是整数,而且从0开始以此类推。
 
  索引数组初始化例:
 
  运行结果:
 
  Array
  (
      [0] => 苹果
      [1] => 香蕉
  )
  索引数组的三种赋值方式:
 
  例:
 
  '苹果');  
  if( isset($arr) ) {print_r($arr);}  
  ?>
  用for与foreach可以访问到数组里面的元素,因for比较容易下面只举使用foreach的例子,
 
  $value){  
      echo '
  第'.$key.'值是:'.$value;  
  }  
    
  ?>
  运行结果:
 
  第0值是:苹果
  第1值是:香蕉
  第2值是:菠萝
  注:这里$key是键值$value则是元素值
 
  2、关联数组
 
  “关联数组”是一种具有特殊索引方式的数组。使用字符串或者其他类型的值(除了NULL)来索引它。
 
  其实关联数组和索引数组的差别只是在键值上,关联数组的键值是字符串,并且是人为的规定,例如:
 
  '橘子');  
  echo $fruit['orange'];  
  ?>
  其余初始化,赋值,foreach的用法基本相同。
 
  3、多维数组
 
  数据结构中的概念, 二维数组以上的数组,既非线性也非平面的数组成为多维数组。
 
   array(
              '阜阳'=>array('阜南县','临泉县','颍州区'),
              '宿州'=>array('墉桥区','灵璧县','泗县'),
              '合肥'=>array('蜀山区','长丰县','肥东')
          ),
          '河南' => array(
              '洛阳'=>array('西工区','老城区','孟津县'),
              '郑州市'=>array('中原区','金水区')
          )
      );
      print_r($arr);
      echo $arr['安徽']['宿州'][0];  // 输出墉桥区
  ?>
  其中“安徽”对应的是一个二维数组,“阜阳”“宿州”“合肥”分别对应一个一维数组;同理,“河南”也对应一个二维数组。“安徽”和“河南”分别对应一个二维数组,它俩组合起来形成一个三维数组。 PHP 中对多维数组没有上限的固定限制,但是随着维数的增加,数组会越来越复杂,对于阅读调试和维护都会稍微困难些。 以上程序的运行结果为:
 
  Array
  (
      [安徽] => Array
          (
              [阜阳] => Array
                  (
                      [0] => 阜南县
                      [1] => 临泉县
                      [2] => 颍州区
                  )
              [宿州] => Array
                  (
                      [0] => 墉桥区
                      [1] => 灵璧县
                      [2] => 泗县
                  )
              [合肥] => Array
                  (
                      [0] => 蜀山区
                      [1] => 长丰县
                      [2] => 肥东
                  )
          )
      [河南] => Array
          (
              [洛阳] => Array
                  (
                      [0] => 西工区
                      [1] => 老城区
                      [2] => 孟津县
                  )
              [郑州市] => Array
                  (
                      [0] => 中原区
                      [1] => 金水区
                  )
          )
  )
  墉桥区
 

(编辑:均轻资讯网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!