PHP中怎样通过不同的方式填充数组?
在之前的文章《带你快速掌握PHP数组元素的替换(实例详解)》中详细的介绍了PHP中怎样替换数组元素的相关知识,本篇文章我们一起来看一下PHP数组操作中填充数组的相关知识,希望对大家有帮助!
在上一篇文章中,我们了解了想要替换数组中的元素可以通过array_splice
函数、array_replace
函数和array_replace_recursive
函数来实现。接下来我们来看一下怎样实现PHP中数组的填充操作。
在PHP中,想要对数组进行填充,可以使用array_fill
函数、array_fill_keys
函数来实现,下面我们就分别来看一下这两个函数的使用方法。
array_fill
函数-键值填充数组
在PHP中,可以通过array_fill
函数来用键值填充一个数组,array_fill
函数的基本语法格式如下:
array_fill(index,number,value);
其中需要注意的是:这三个参数都是必须要有的,参数index
表示的是在返回数组中的第一个索引,参数number
表示的是要插入的元素数量,参数value
表示的是用来填充的时候所填充的值。
如果参数index
为正数的话,返回数组中的索引就会从参数index开始;如果参数index
为负数,那么在返回数组中只有第一个元素的索引为参数index
,第二个是0
,第三个是1
以此类推。
返回的数组中一共有参数number
个元素,填充的值用value
,如果参数number
为0
或者小于0
的话,函数会错误。函数运行成功,返回的结果就是被填充的数组。
下面我们通过示例来看一下array_fill
函数的应用,示例如下:
<?php $a1=array_fill(3,4,"blue"); print_r($a1); ?>
输出结果:
下面我们看一下当参数index
为负数时,结果有什么变化,示例如下:
<?php $a1=array_fill(3,4,"blue"); print_r($a1); echo '<br/>'; $a2=array_fill(-3,4,"blue"); print_r($a2); ?>
输出结果:
上述示例中,便是展现了参数index
参数不同,输出结果上的变化,也就是索引的变化。
array_fill_keys
函数-键和值填充数组
在PHP中我们可以使用array_fill_keys
函数来通过键和值来填充数组,array_fill_keys
函数的基本语法格式如下:
array_fill_keys(keys,value);
其中需要注意的是:两个参数都是必须要有的,参数keys
表示的是使用该参数的数组值作为新数组的键,如果参数keys
中的值不规范会被转化为字符串,参数value
表示的是用来填充数组的值。返回的结果就是一个被填充完成的数组。
下面我们通过示例来看一下array_fill_keys
函数的应用,示例如下:
<?php $keys=array("a","b","c","d"); $a1=array_fill_keys($keys,"blue"); print_r($a1); ?>
输出结果:
上述示例中,参数value只有一个值,这时候填充的数组中全部都是一个值,当参数value并不止一个的时候,示例如下:
<?php $keys=array("a","b","c","d"); $a1=array_fill_keys($keys,"blue"); print_r($a1); echo '<br/>'; $value=array('red','green','blue'); $a2=array_fill_keys($keys,$value); echo "<pre>"; var_dump($a2); ?>
输出结果:
上述示例中,便是参数value也是一个数组的时候,输出结果会成为一个多维数组。
大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。