Comment créer un tableau : 1. Utilisez l'instruction "$array name[subscript]=value;" pour créer un tableau par affectation directe ; 2. Utilisez "$array name=array(key name=>value); " ; 3. Utilisez array_fill() pour créer un nouveau tableau en remplissant les valeurs clés ; 4. Utilisez array_combine(), etc.
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3
Comment créer un tableau en php ? L'article suivant vous présentera plusieurs méthodes de création de tableaux.
1. Créez un tableau par affectation directe
Le format de syntaxe pour déclarer un tableau unidimensionnel est le suivant :
$数组变量名[下标] = 值;
où l'indice (valeur d'index) peut être une chaîne ou un entier, et le l'indice doit être Utiliser le wrapper [ ]
. [ ]
包裹。
声明一个索引数组时,如果索引值是递增的,我们也可以不在方括号内指定具体的索引值,这时索引值默认从 0 开始依次增加。
<?php header("Content-type:text/html;charset=utf-8"); $array[] = '苹果'; $array[] = '香蕉'; $array[] = '橘子'; $array[] = '榴莲'; var_dump($array); ?>
2、使用 array() 函数创建数组
声明数组的另一种方法是使用 array() 函数来新建一个数组。它接受一定数量用逗号分隔的key=>value参数对。语法格式如下所示:
$数组变量名 = array(key1 => value1, key2 => value2, ..., keyN => valueN);
示例1:
<?php header("Content-type:text/html;charset=utf-8"); $array = array('红色','黄色','蓝色','紫色'); var_dump($array); ?>
示例2:
<?php header("Content-type:text/html;charset=utf-8"); $array = array("id"=>25,"name"=>"李华","age"=>18); var_dump($array); ?>
3、使用array_fill()创建数组
array_fill():会以填充键值的方式来创建一个新数组
<?php $arr=array_fill(0,4,"hello"); var_dump($arr); ?>
array_fill($index, $number, $value)
函数接受3个不可省略的参数$index
(起始索引)、$number
(填充元素数量)和$value
(用于填充的键值)。
其中,$index
参数支持负值,数组索引有以下三种取值情况:
如果为正数,则数组索引从$index
值开始,到$index+$number-1
值结束。例$index
为2,$number
为4,则数组索引为:2、3、4、5。
如果为0,则数组索引从0
开始,到$number-1
值结束。例$index
为0,$number
为4,则数组索引为:0、1、2、3。
如果为负数,则数组索引由 $index
,0
,1
,2
, ...,$number-2
组成。例$index
为-2,$number
为4,则数组索引为:-2、0、1、2。
在上例中,array_fill(0,4,"hello")
的$index
为0(索引从0开始)、$number
为4(数组有四个元素),因此数组索引为:0、1、2、3;而$value
为hello
,则这四个元素的键值都为hello
,因此输出结果为:
在看两个示例:
<?php $arr=array_fill(3,4,"hello"); var_dump($arr); ?>
分析:索引从3开始、到3+4-1=6结束,数组的键值都为hello
,因此输出结果为:
<?php $arr=array_fill(-2,4,"hello"); var_dump($arr); ?>
输出结果为:
$value
参数不仅可以是单个数值/字符串,也可以是一个数组,那么创建的就是一个二维数组了。
<?php header("Content-type:text/html;charset=utf-8"); $arr=array_fill(0,4,array("张三",25,"男")); var_dump($arr); ?>
输出结果为:
4、使用array_fill_keys()函数
array_fill_keys():会以填充键名和键值的方式来创建一个新数组
<?php $keys=array("a","b","c","d"); $arr=array_fill_keys($keys,"hello"); var_dump($arr); ?>
array_fill_keys($keys,$value)
函数接受2个不可省略的参数$keys
(包含填充键名的一个数组)、$value
(填充键值)。
简单来说,array_fill_keys()函数会使用$keys
数组中元素作为键名,$value
<?php header("Content-type:text/html;charset=utf-8"); $keys=array("a","b","c","d"); $arr=array_fill_keys($keys,array("李四",21,"男")); var_dump($arr); ?>
<?php header("Content-type:text/html;charset=utf-8"); $keys=array("a","b","c","d"); $values=array("red","green","blue","yellow"); var_dump($keys); var_dump($values); echo "使用array_combine()合并数组后:"; var_dump(array_combine($keys,$values)); ?>
range(low,high,step)
<?php header("Content-type:text/html;charset=utf-8"); var_dump(range(0,5)); var_dump(range(0,5,2)); var_dump(range(0,20,5)); ?>
array_fill($index, $number, $value)
accepte 3 paramètres non omisables $index
(index de départ), $number</code code> (le nombre d'éléments de remplissage) et <code>$value
(la valeur clé utilisée pour le remplissage). 🎜🎜Parmi eux, le paramètre $index
prend en charge les valeurs négatives, et l'index du tableau a les trois valeurs suivantes : 🎜$index
et se termine par la valeur $index+$number-1
. Par exemple, $index
vaut 2 et $number
vaut 4, alors l'index du tableau est : 2, 3, 4, 5. 🎜0
et se termine par la valeur $number-1
. Par exemple, $index
vaut 0 et $number
vaut 4, alors l'index du tableau est : 0, 1, 2, 3. 🎜$index
, 0
, 1
, 2< /code>, ..., <code>$numéro-2
. Par exemple, $index
vaut -2 et $number
vaut 4, alors l'index du tableau est : -2, 0, 1, 2. 🎜$index
de array_fill(0,4,"hello")
est 0 (l'index commence à 0) , $number
vaut 4 (le tableau comporte quatre éléments), donc l'index du tableau est : 0, 1, 2, 3 et $value
est ; bonjour</ code>, alors les valeurs clés de ces quatre éléments sont <code>bonjour
, donc le résultat de sortie est : 🎜🎜🎜🎜Regardons deux exemples : 🎜rrreee🎜Analyse : L'index commence à 3 et se termine à 3 +4-1=6 À la fin, les valeurs clés du tableau sont toutes hello
, donc le résultat de sortie est : 🎜🎜🎜rrreee🎜Le résultat de sortie est : 🎜🎜🎜🎜$value
Le paramètre peut non seulement être une 🎜valeur/chaîne unique🎜, mais aussi un 🎜Un tableau🎜, alors ce qui est créé est un 🎜tableau bidimensionnel🎜. 🎜rrreee🎜Le résultat de sortie est : 🎜🎜🎜🎜🎜🎜4. Utilisez la fonction array_fill_keys()🎜🎜🎜🎜array_fill_keys() : Un nouveau tableau sera créé en remplissant les noms et les valeurs des clés🎜rrreee🎜array_fill_keys($keys, La fonction $value )
accepte deux paramètres non omisables $keys
(un tableau contenant les noms de clés) et $value
(la valeur de la clé). 🎜🎜En termes simples, la fonction array_fill_keys() utilisera les éléments du tableau $keys
comme noms de clés et $value
comme valeurs pour remplir un nouveau tableau. 🎜从上面的代码示例可以看出:新数组有四个元素,键名分别为“a
”、“b
”、“c
”、“d
”;这四个元素的键值都为“hello
”,因此输出结果为:
array_fill_keys()和array_fill()函数一样,$value
值也可以接受一个数组,那么创建的就是一个二维数组了。
<?php header("Content-type:text/html;charset=utf-8"); $keys=array("a","b","c","d"); $arr=array_fill_keys($keys,array("李四",21,"男")); var_dump($arr); ?>
输出结果为:
5、使用array_combine()函数
array_combine()函数可以通过合并两个数组(一个为键名数组,一个为键值数组)来创建一个新数组。
<?php header("Content-type:text/html;charset=utf-8"); $keys=array("a","b","c","d"); $values=array("red","green","blue","yellow"); var_dump($keys); var_dump($values); echo "使用array_combine()合并数组后:"; var_dump(array_combine($keys,$values)); ?>
输出结果为:
可以看出,上面的示例中使用array_combine($keys,$values)
函数通过合并两个数组的方式创建了一个新数组,其中$keys
数组中的元素作为了新数组的键名,$values
数组的元素为作为了新数组的键值。
需要注意的是:
使用array_combine()函数创建数组时,$keys数组和$values数组中的元素个数必须要一致,这才能让键名和键值一一对应,否则就会报错并返回 FALSE
$keys数组不可为多维数组,但$values数组可以为多维数组。
6、使用range() 函数
range() 函数创建一个包含指定范围的元素的数组。
语法:
range(low,high,step)
low 必需。规定数组元素的最小值。
high 必需。规定数组元素的最大值。
step 可选。规定元素之间的步进制。默认是 1。
该函数返回一个包含从 low 到 high 之间的元素的数组。
<?php header("Content-type:text/html;charset=utf-8"); var_dump(range(0,5)); var_dump(range(0,5,2)); var_dump(range(0,20,5)); ?>
推荐学习:《PHP视频教程》
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!