• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

php 多维数组是什么意思

武飞扬头像
PHP中文网
帮助28

PHP - 多维数组

多维数组指的是包含一个或多个数组的数组。

PHP 能理解两、三、四或五级甚至更多级的多维数组。不过,超过三级深的数组对于大多数人难于管理。

注释:数组的维度指示您需要选择元素的索引数。

  • 对于二维数组,您需要两个索引来选取元素

  • 对于三维数组,您需要三个索引来选取元素

PHP - 两维数组

两维数组是数组的数组(三维数组是数组的数组的数组)。

首先,让我们看看下面的表格:

品牌 库存 销量
Volvo 33 20
BMW 17 15
Saab 5 2
Land Rover 15 11

我们能够在两维数组中存储上表中的数据,就像这样:

$cars = array
  (
  array("Volvo",22,18),
  array("BMW",15,13),
  array("Saab",5,2),
  array("Land Rover",17,15)
  );

现在这个两维数组包含了四个数组,并且它有两个索引(下标):行和列。

如需访问 $cars 数组中的元素,我们必须使用两个索引(行和列):

实例

<?php
header("Content-type:text/html;charset=utf-8");
$cars = array
   (
   array("Volvo",33,20),
   array("BMW",17,15),
   array("Saab",5,2),
   array("Land Rover",15,11)
   );
   
echo $cars[0][0].": 库存:".$cars[0][1].", 已售:".$cars[0][2].".<br>";
echo $cars[1][0].": 库存:".$cars[1][1].", 已售:".$cars[1][2].".<br>";
echo $cars[2][0].": 库存:".$cars[2][1].", 已售:".$cars[2][2].".<br>";
echo $cars[3][0].": 库存:".$cars[3][1].", 已售:".$cars[3][2].".<br>";
?>

学新通技术网

我们也可以在 For 循环中使用另一个 For 循环,来获得 $cars 数组中的元素(我们仍需使用两个索引):

<?php
header("Content-type:text/html;charset=utf-8");
$cars = array
   (
   array("Volvo",33,20),
   array("BMW",17,15),
   array("Saab",5,2),
   array("Land Rover",15,11)
   );
   
for ($row = 0; $row <  4; $row  ) {
   echo "<p><b>行数 $row</b></p>";
   echo "<ul>";
   for ($col = 0; $col <  3; $col  ) {
     echo "<li>".$cars[$row][$col]."</li>";
   }
   echo "</ul>";
}
?>

学新通技术网

二维数组的创建方法:

二维数组和一维数组的创建方式是一样的,只是将数组中元素换成数组即可。同样有两种方法:“直接为数组元素赋值”和“array()函数”,下面我们实际的代码案例来详细的给大家介绍一下这两种方法。

1、直接为数组元素赋值

我们可以通过形如“$数组变量名[行下标] [列下标]= 值;”的格式来创建并初始化二维数组

<?php
header("Content-type:text/html;charset=utf-8");
$array[0]['姓名'] = '张三';
$array[0]['年龄'] = '25';
$array[0]['性别'] = '男';
$array[1]['姓名'] = '李四';
$array[1]['年龄'] = '21';
$array[1]['性别'] = '男';
$array[2]['姓名'] = '娜娜';
$array[2]['年龄'] = '22';
$array[2]['性别'] = '女';
var_dump($array);
?>

输出结果:

学新通技术网

二维数组的行下标列下标可以为空(即不指定具体的索引值),那么默认为数字索引,而索引值默认从 0 开始依次增加。

示例1:“列下标”为空

<?php
header("Content-type:text/html;charset=utf-8");
$array[0][] = '张三';
$array[0][] = '25';
$array[0][] = '男';
$array[1][] = '李四';
$array[1][] = '21';
$array[1][] = '男';
$array[2][] = '娜娜';
$array[2][] = '22';
$array[2][] = '女';
var_dump($array);
?>

输出结果:

学新通技术网

示例2:“行下标”为空

<?php
header("Content-type:text/html;charset=utf-8");
$array[]['姓名'] = '张三';
$array[]['年龄'] = '25';
$array[]['性别'] = '男';
$array[]['姓名'] = '李四';
$array[]['年龄'] = '21';
$array[]['性别'] = '男';
$array[]['姓名'] = '娜娜';
$array[]['年龄'] = '22';
$array[]['性别'] = '女';
var_dump($array);
?>

输出结果:

学新通技术网

示例3:“行下标”和“列下标”都为空

<?php
header("Content-type:text/html;charset=utf-8");
$array[][] = '张三';
$array[][] = '25';
$array[][] = '男';
$array[][] = '李四';
$array[][] = '21';
$array[][] = '男';
$array[][] = '娜娜';
$array[][] = '22';
$array[][] = '女';
var_dump($array);
?>

输出结果:

学新通技术网

2、使用array()函数

使用 array() 函数声明二维数组与声明一维数组相似。

1)索引数组

<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
    array("张三",25,"男"),
    array("李四",21,"男"),
    array("娜娜",22,"女")
);
var_dump($array);
?>

输出结果:

学新通技术网

2)关联数组

示例1:

<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
    "学生1"=>array("张三",25,"男"),
    "学生2"=>array("李四",21,"男"),
    "学生3"=>array("娜娜",22,"女")
);
var_dump($array);
?>

输出结果:

学新通技术网

示例2:

<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
    "学生1"=>array("姓名"=>"张三","年龄"=>25,"性别"=>"男"),
    "学生2"=>array("姓名"=>"李四","年龄"=>21,"性别"=>"男"),
    "学生3"=>array("姓名"=>"娜娜","年龄"=>22,"性别"=>"女")
);
 var_dump($array);
?>

输出结果:

学新通技术网

说明:获取二维数组中的元素

只需要注明每个维度的下标即可

<?php
header("Content-type:text/html;charset=utf-8");
$array = array
(
    array("姓名"=>"张三","年龄"=>25,"性别"=>"男"),
    array("姓名"=>"李四","年龄"=>21,"性别"=>"男"),
    array("姓名"=>"娜娜","年龄"=>22,"性别"=>"女")
);
 echo $array[0]['姓名'].'同学的年龄为'.$array[0]['年龄'].'岁';
?>

输出结果:

张三同学的年龄为25岁

二、多维数组的创建

多维数组是包含一个或多个数组的数组。

在多维数组中,主数组中的每一个元素也可以是一个数组,子数组中的每一个元素也可以是一个数组。

参考二维数组,我们可以很容易地了解多维数组的创建方法

示例:三维数组的创建

<?php
header("Content-type:text/html;charset=utf-8");
$array = array(
        '安徽' => array(
            '合肥'=>array('蜀山区','长丰县','肥东'),
			'宿州'=>array('墉桥区','灵璧县','泗县')
        ),
        '河南' => array(
            '洛阳'=>array('西工区','老城区','孟津县'),
            '郑州市'=>array('中原区','金水区')
        )
);
 var_dump($array);
?>

输出结果:

学新通技术网

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanfckkk
系列文章
更多 icon
同类精品
更多 icon
继续加载