Method to create an array: 1. Use the "$array name[subscript]=value;" statement to create an array by direct assignment; 2. Use "$array name=array(key name=> ;value);" statement; 3. Use array_fill() to create a new array by filling key values; 4. Use array_combine(), etc.
The operating environment of this tutorial: windows7 system, PHP7.1 version, DELL G3 computer
How to create an array in php? The following article will introduce you to several methods of creating arrays.
1. Create an array by direct assignment
The syntax format for declaring a one-dimensional array is as follows:
$数组变量名[下标] = 值;
The subscript (index value) can be a string or an integer, and the subscript needs to be wrapped with [ ]
.
When declaring an index array, if the index value is increasing, we can also not specify the specific index value within the square brackets. In this case, the index value will increase sequentially starting from 0 by default.
<?php header("Content-type:text/html;charset=utf-8"); $array[] = '苹果'; $array[] = '香蕉'; $array[] = '橘子'; $array[] = '榴莲'; var_dump($array); ?>
2. Use the array() function to create an array
Another way to declare an array Use the array() function to create a new array. It accepts a certain number of key=>value parameter pairs separated by commas. The syntax format is as follows:
$数组变量名 = array(key1 => value1, key2 => value2, ..., keyN => valueN);
Example 1:
<?php header("Content-type:text/html;charset=utf-8"); $array = array('红色','黄色','蓝色','紫色'); var_dump($array); ?>
Example 2:
<?php header("Content-type:text/html;charset=utf-8"); $array = array("id"=>25,"name"=>"李华","age"=>18); var_dump($array); ?>
3. Use array_fill() to create an array
array_fill(): A new array will be created by filling the key values
<?php $arr=array_fill(0,4,"hello"); var_dump($arr); ?>
array_fill($index, $number, $value)
The function accepts 3 parameters that cannot be omitted $index
(starting index), $number
(the number of padding elements) and $value
(the key value used for padding).
Among them, the $index
parameter supports negative values, and the array index has the following three values:
If it is a positive number, the array The index starts from the $index
value and ends with the $index $number-1
value. For example, $index
is 2, $number
is 4, then the array index is: 2, 3, 4, 5.
If 0, the array index starts from 0
and ends with the $number-1
value. For example, $index
is 0, $number
is 4, then the array index is: 0, 1, 2, 3.
If it is negative, the array index is $index
, 0
, 1
, 2
, ..., $number-2
consists of. For example, $index
is -2, $number
is 4, then the array index is: -2, 0, 1, 2.
In the above example, the $index
of array_fill(0,4,"hello")
is 0 (the index starts from 0) , $number
is 4 (the array has four elements), so the array index is: 0, 1, 2, 3; and $value
is hello
, Then the key values of these four elements are hello
, so the output result is:
Looking at two examples:
<?php $arr=array_fill(3,4,"hello"); var_dump($arr); ?>
Analysis: The index starts from 3 and ends at 3 4-1=6. The key values of the array are all hello
, so the output result is:
<?php $arr=array_fill(-2,4,"hello"); var_dump($arr); ?>
The output result is:
$value
The parameter can not only be a single value/string, but also An array, then what is created is a two-dimensional array.
<?php header("Content-type:text/html;charset=utf-8"); $arr=array_fill(0,4,array("张三",25,"男")); var_dump($arr); ?>
The output result is:
4. Use array_fill_keys() function
array_fill_keys(): will create a new array by filling in key names and key values
<?php $keys=array("a","b","c","d"); $arr=array_fill_keys($keys,"hello"); var_dump($arr); ?>
array_fill_keys($keys,$value)
The function accepts 2 parameters that cannot be omitted$keys
(an array containing the key names), $value
(the key value).
Simply put, the array_fill_keys() function will use the elements in the $keys
array as key names and $value
as values to fill a new array.
从上面的代码示例可以看出:新数组有四个元素,键名分别为“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视频教程》
The above is the detailed content of What are the ways to create php arrays?. For more information, please follow other related articles on the PHP Chinese website!