1、一维数组与多维数组的概念
在 PHP 中,一个数组可以是一维的,也可以是多维的。一维数组是一个包含有向的键和值的序列,它的下标是顺序的从0到len-1或是自定义的字符串。而多维数组则是包含有向的键和值的序列的序列,它可以看成是一个表,其中每个单元都是一维数组。
//一维数组
$arr1 = array(1, 2, 3, 4, 5);
//多维数组
$arr2 = array(
array(1,2,3),
array('a','b','c'),
array('Hello','World')
);
2、增加一维数组的维度
在实际的开发中,我们常常需要对一个数组增加其维度,例如将一个一维数组转化为二维数组、或将二维数组转化为三维数组等操作。下面我们分别介绍一维数组增加维度和多维数组增加维度的方法。
2.1、一维数组增加维度
当我们需要把一个一维数组增加其维度时,可以使用 array() 函数将其转化为一个只包含该数组的元素的数组即可。
//定义一个一维数组
$arr = array('one', 'two', 'three');
//增加维度
$arr = array($arr);
print_r($arr);
上述代码的输出结果为:
Array
(
[0] => Array
(
[0] => one
[1] => two
[2] => three
)
)
2.2、多维数组增加维度
当我们需要把一个多维数组增加其维度时,可以使用循环遍历将其每个元素都转化为只包含该元素的元素的数组即可。下面是一个将二维数组增加维度转化为三维数组的示例:
//定义一个二维数组
$arr = array(
array('one', 'two'),
array('three', 'four')
);
//增加维度
foreach($arr as $key=>$value){
$arr[$key] = array($value);
}
print_r($arr);
上述代码的输出结果为:
Array
(
[0] => Array
(
[0] => Array
(
[0] => one
[1] => two
)
)
[1] => Array
(
[0] => Array
(
[0] => three
[1] => four
)
)
)
通过循环遍历,我们把数组中的每个元素都转化为只包含该元素的元素的数组,从而实现了多维数组的增加维度操作。