php中的数组是一种非常常用的数据结构,它可以用来存储多个值。在php中,使用数组可以更方便地管理和操作大量数据。本文将介绍如何在php中使用数组,并提供代码示例,帮助读者更好地理解数组的基本用法和操作技巧。让我们一起来探索如何在php中灵活地应用数组功能,提升编程效率吧!
你可以用两种不同的方式定义一个空数组:
<code>$list = [];$list = array();</code>
数组可以用值进行初始化:
<code>$list = [1, 2];$list = array(1, 2);</code>
数组可以容纳任何类型的值:
<code>$list = [1, 'test'];</code>
甚至其他数组:
<code>$list = [1, [2, 'test']];</code>
你可以用这个符号访问数组中的元素:
<code>$list = ['a', 'b'];$list[0]; //'a' --the index starts at 0$list[1]; //'b'</code>
一旦一个数组被创建,你可以用这种方式向它追加值:
<code>$list = ['a', 'b'];$list[] = 'c';</code>
你可以用array_unshift()
来代替在数组的开头添加项:
<code>$list = ['b', 'c'];array_unshift($list, 'a');</code>
使用内置的count()
函数计算一个数组中有多少个项:
<code>$list = ['a', 'b'];count($list); //2</code>
使用in_array()
内置函数检查一个数组是否包含一个项:
<code>$list = ['a', 'b'];in_array('b', $list); //true</code>
如果除了确认存在之外,你还需要索引,使用array_search()
:
<code>$list = ['a', 'b'];array_search('b', $list) //1</code>
有用的PHP数组函数
与字符串和数字一样,php为数组提供了很多非常有用的函数。我们已经看到了count()
,in_array()
,array_search()
, 让我们再看一些:
-
is_array()
检查一个变量是否是一个数组 -
array_unique()
从一个数组中删除重复的值 -
array_search()
在数组中搜索一个值并返回键值 -
array_reverse()
反转一个数组 -
array_reduce()
使用回调函数将一个数组减少到一个单一的值 -
array_map()
对数组中的每个项目应用一个回调函数。通常用于通过修改一个现有数组的值来创建一个新的数组,而不改变该数组 -
array_filter()
使用一个回调函数将一个数组过滤为一个单一的值 -
max()
获取数组中的最大值 -
min()
获取数组中包含的最小值 -
array_rand()
从数组中获取一个随机项 -
array_count_values()
计算数组中的所有数值 -
implode()
将一个数组变成一个字符串 -
array_pop()
删除数组中的最后一项,并返回其值 -
array_shift()
与 相同,但删除的是第一个项目而不是最后一个项目array_pop()
-
sort()
对一个数组进行排序 -
rsort()
对一个数组进行倒序排序 -
array_walk()
与 类似,对数组中的每一个项都做一些事情,但除此之外,它还可以改变现有数组中的值。array_map()
关联数组
到目前为止,我们已经使用了具有递增的、数字索引的数组。0, 1, 2…
你也可以使用带有命名索引(键)的数组,我们称它们为关联数组:
<code>$list = ['first' => 'a', 'second' => 'b'];$list['first'] //'a'$list['second'] //'b'</code>
我们有一些对关联数组特别有用的函数:
-
array_key_exists()
检查一个键是否存在于数组中 -
array_keys()
从数组中获取所有的键 -
array_values()
从数组中获取所有的值 -
asort()
对一个关联数组按值进行排序 -
arsort()
按值对关联数组进行降序排序 -
ksort()
按键对关联数组进行排序 -
krsort()
按键对关联数组进行降序排序