PHP8创建数组-PHP8知识详解

php 8中,您可以使用以下方法创建数组:使用数组字面量创建数组、使用 array() 函数创建数组、通过赋值的方式创建数组、使用array_push()函数将元素添加到数组末尾、使用range()函数创建数值数组、使用compact()函数创建带有变量名的数组、使用array_fill()创建数组、使用array_fill_keys()函数创建数组。

Image

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()函数创建数组就讲解完毕了。