PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

PHP中怎样通过不同的方式填充数组?

WBOY
WBOY 原创
2021-11-08 14:35:15 1129浏览

在之前的文章《带你快速掌握php数组元素的替换(实例详解)》中详细的介绍了php中怎样替换数组元素的相关知识,本篇文章我们一起来看一下php数组操作中填充数组的相关知识,希望对大家有帮助!

在上一篇文章中,我们了解了想要替换数组中的元素可以通过array_splice函数、array_replace函数和array_replace_recursive函数来实现。接下来我们来看一下怎样实现PHP中数组的填充操作。

在PHP中,想要对数组进行填充,可以使用array_fill函数、array_fill_keys函数来实现,下面我们就分别来看一下这两个函数的使用方法。

<strong><span style="max-width:90%">array_fill</span></strong>函数-键值填充数组

在PHP中,可以通过array_fill函数来用键值填充一个数组,array_fill函数的基本语法格式如下:

array_fill(index,number,value);

其中需要注意的是:这三个参数都是必须要有的,参数index表示的是在返回数组中的第一个索引,参数number表示的是要插入的元素数量,参数value表示的是用来填充的时候所填充的值。

如果参数index为正数的话,返回数组中的索引就会从参数index开始;如果参数index为负数,那么在返回数组中只有第一个元素的索引为参数index,第二个是0,第三个是1以此类推。

返回的数组中一共有参数number个元素,填充的值用value,如果参数number0或者小于0的话,函数会错误。函数运行成功,返回的结果就是被填充的数组。

下面我们通过示例来看一下array_fill函数的应用,示例如下:

<?php
$a1=array_fill(3,4,"blue");
print_r($a1);
?>

输出结果:

1108.09.png

下面我们看一下当参数index为负数时,结果有什么变化,示例如下:

<?php
$a1=array_fill(3,4,"blue");
print_r($a1);
echo &#39;<br/>&#39;;
$a2=array_fill(-3,4,"blue");
print_r($a2);
?>

输出结果:

1108.10.png

上述示例中,便是展现了参数index参数不同,输出结果上的变化,也就是索引的变化。

<strong><span style="max-width:90%">array_fill_keys</span></strong>函数-键和值填充数组

在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);
?>

输出结果:

1108.11.png

上述示例中,参数value只有一个值,这时候填充的数组中全部都是一个值,当参数value并不止一个的时候,示例如下:

<?php
$keys=array("a","b","c","d");
$a1=array_fill_keys($keys,"blue");
print_r($a1);
echo &#39;<br/>&#39;;
$value=array(&#39;red&#39;,&#39;green&#39;,&#39;blue&#39;);
$a2=array_fill_keys($keys,$value);
echo "<pre class="brush:php;toolbar:false">";
var_dump($a2);
?>

输出结果:

1108.12.png

上述示例中,便是参数value也是一个数组的时候,输出结果会成为一个多维数组。

大家如果感兴趣的话,可以点击《PHP视频教程》进行更多关于PHP知识的学习。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。