在php 8中,您可以使用以下方法创建数组:使用数组字面量创建数组、使用 array() 函数创建数组、通过赋值的方式创建数组、使用array_push()函数将元素添加到数组末尾、使用range()函数创建数值数组、使用compact()函数创建带有变量名的数组、使用array_fill()创建数组、使用array_fill_keys()函数创建数组。
1、使用数组字面量创建数组
使用数组字面量创建数组,这个是最简单的创建方法了,语法如下:
$名称 = []
使用数组字面量创建数组,参考代码:
<?php
$a = ['php', 'mysql', 'html'];
echo "<pre>";
print_r($a);
?>
以上代码在PHP8中的运行结果为:
Array
([0] => php[1] => mysql[2] => html
)
2、使用 array() 函数创建数组
使用 array() 函数创建一个新的数组,该数组接受任意数量用逗号分隔的键(key)=>值(value)对,语法格式如下:
array(key => value,……)
使用 array() 函数创建数组,参考代码:
<?php
$array = array('html','css','javascript','php','mysql');
echo "<pre>";
print_r($array);
?>
以上代码在PHP8中,运行的结果为:
Array
([0] => html[1] => css[2] => javascript[3] => php[4] => mysql
)
3、通过赋值的方式创建数组
我们可以通过赋值的方式直接创建数组,语法格式如下:
$名字[索引值] = 值;
其中索引值(下标)可以是一个字符串或一个整数,并且下标需要使用[ ]包裹。
声明一个索引数组时,如果索引值是递增的,我们也可以不在方括号内指定具体的索引值,这时索引值默认从 0 开始依次增加。
通过赋值的方式创建数组,参考代码如下:
<?php
$s[] = 'html';
$s[] = 'css';
$s[] = 'javascript';
$s[] = 'php';
$s[] = 'mysql';
echo "<pre>";
print_r($s);
?>
以上代码在PHP8中的运行结果为:
Array
([0] => html[1] => css[2] => javascript[3] => php[4] => mysql
)
4、使用array_push()函数将元素添加到数组末尾
参考代码:
<?php
$array = [];
array_push($array, "html");
array_push($array, "css");
array_push($array, "php");
// 可以继续添加更多元素
echo "<pre>";
print_r($array);
?>
在PHP8中的运行结果为:
Array
([0] => html[1] => css[2] => php
)
5、使用range()函数创建数值数组
使用range()函数创建数值数组,示范代码:
<?php
$n = range(1, 5);
echo "<pre>";
print_r($n);
?>
以上代码在PHP8中的运行结果为:
Array
([0] => 1[1] => 2[2] => 3[3] => 4[4] => 5
)
6、使用compact()函数创建带有变量名的数组:
<?php
$name = '张三';
$age = 30;
$person = compact('name', 'age');
echo "<pre>";
print_r($person);
?>
以上代码在PHP8中的运行结果为:
Array
([name] => 张三[age] => 30
)
7、使用array_fill()创建数组
使用array_fill():会以填充键值的方式来创建一个新数组,语法格式:
array_fill($index, $number, $value)
参考代码:
<?php
$a=array_fill(0,5,"php");
echo "<pre>";
var_dump($a);
?>
函数接受3个不可省略的参数$index(起始索引)、$number(填充元素数量)和$value(用于填充的键值)。
其中,$index参数支持负值,数组索引有以下三种取值情况:
如果为正数,则数组索引从$index值开始,到$index+$number-1值结束。例$index为2,$number为5,则数组索引为:2、3、4、5/6。
如果为0,则数组索引从0开始,到$number-1值结束。例$index为0,$number为5,则数组索引为:0、1、2、3、4。
如果为负数,则数组索引由 $index,0,1,2, ...,$number-2 组成。例$index为-2,$number为5,则数组索引为:-2、-1、0、1、2。
在上例中,array_fill(0,5,"php")的$index为0(索引从0开始)、$number为5(数组有五个元素),因此数组索引为:0、1、2、3、4;而$value为php,则这四个元素的键值都为php。
以上代码在PHP8中的运行结果为:
array(5) {[0]=>string(3) "php"[1]=>string(3) "php"[2]=>string(3) "php"[3]=>string(3) "php"[4]=>string(3) "php"
}
8、使用array_fill_keys()函数创建数组
array_fill_keys():会以填充键名和键值的方式来创建一个新数组
<?php
$keys=array("a","b","c","d");
$a=array_fill_keys($keys,"php");
echo "<pre>";
var_dump($a);
?>
array_fill_keys($keys,$value)函数接受2个不可省略的参数$keys(包含填充键名的一个数组)、$value(填充键值)。
简单来说,array_fill_keys()函数会使用$keys数组中元素作为键名,$value作为值来填充出一个新数组。
从上面的代码示例可以看出:新数组有四个元素,键名分别为“a”、“b”、“c”、“d”;这四个元素的键值都为“php”,因此在PHP8中输出结果为:
array(4) {["a"]=>string(3) "php"["b"]=>string(3) "php"["c"]=>string(3) "php"["d"]=>string(3) "php"
}
好了,今天讲解的使用数组字面量创建数组、使用 array() 函数创建数组、通过赋值的方式创建数组、使用array_push()函数将元素添加到数组末尾、使用range()函数创建数值数组、使用compact()函数创建带有变量名的数组、使用array_fill()创建数组、使用array_fill_keys()函数创建数组就讲解完毕了。