PHP 数组函数的使用方法
PHP 中包含了许多用于数组处理的内置函数,在一般实践中,使用正确的数组函数将为您节省大量时间,因为它们是在 PHP 库中预定义的,您可以很方便的直接调用他们。
PHP5常用数组函数
sizeof($arr)
函数返回数组的大小或数组中存储的数据元素的数量。
<?php $lamborghinis = array("人", "仙", "魔"); echo "数组大小: ". sizeof($lamborghinis); ?>
输出
数组大小:3
is_array($arr)
要检查提供的数据是否为数组形式,我们可以使用该is_array()函数。它返回True是一个数组,返回False,则不是数组。
<?php $lamborghinis = array("人", "仙", "魔"); echo is_array($lamborghinis) ? '是数组' : '不是数组'; $mycar = "用户名"; echo is_array($mycar) ? '是数组' : '不是数组'; ?>
输出
是数组 不是数组
in_array($var, $arr)
检查数组中是否存在某个值。
<?php $lamborghinis = array("人", "仙", "魔"); $concept = "仙"; echo in_array($concept, $lamborghinis) ? '存在这个值' : '不存在!' ?>
输出
存在这个值
print_r($arr)
这不是一个数组函数,它用于打印数组,将数组内的内容全部显示出来。
<?php $lamborghinis = array("人", "仙", "魔"); print_r($lamborghinis); ?>
输出
Array ( [0] => "人" [1] => "仙" [2] => "魔" )
array_values($arr)
在数组中,数据以键值对的形式存储,其中键可以是数字(在索引数组的情况下)或用户定义的字符串(在关联数组的情况下)和值。
如果我们想从数组中取出所有值,而不是键,并将它们存储在一个单独的数组中,那么我们可以使用array_values()函数。
<?php $hatchbacks = array( "Suzuki" => "Baleno", "Skoda" => "Fabia", "Hyundai" => "i20", "Tata" => "Tigor" ); $friends = array("Vinod", "Javed", "Navjot", "Samuel"); $merged = array_merge($hatchbacks, $friends); $merged = array_values($merged); print_r($merged); ?>
array_keys($arr)
就像值一样,我们也可以只从数组中提取键。让我们使用这个函数从数组中提取键$merged。
<?php $keys = array_values($merged); print_r($keys); ?>
输出
Array ( [0] => Suzuki [1] => Skoda [2] => Hyundai [3] => Tata [4] => 0 [5] => 1 [6] => 2 [7] => 3 )
array_pop($arr)
此函数删除数组的最后一个元素。因此它可用于从末尾删除一个元素。
array_push($arr, $val)
该函数与array_pop()函数相反。这可用于在数组末尾添加一个新元素。
<?php $lamborghinis = array("Urus", "Huracan", "Aventador"); array_push($lamborghinis, "Estoque"); print_r($lamborghinis); ?>
array_shift($arr)
此函数可用于从数组中删除/移出第一个元素。因此,它就像array_pop()功能一样,但在删除元素的位置方面有所不同。
sort($arr)
此函数按升序对数组元素进行排序。在字符串值数组的情况下,值按字母升序排序。
<?php $lamborghinis = array("Urus", "Huracan", "Aventador", "Estoque"); sort($lamborghinis); print_r($lamborghinis); ?>
输出
array([0] => Aventador [1] => Estoque [2] => Huracan [3] => Urus)
array_flip($arr)
此函数交换 PHP 关联数组的键和值。
array_reverse($arr)
此函数用于颠倒元素的顺序,使第一个元素在最后一个元素在前,并类似地重新排列其他数组元素。
array_rand($arr)
如果要从数组中选取随机数据元素,可以使用该array_rand()函数。这个函数从给定的数组中随机选择一个元素并返回它。
在索引数组的情况下,它将返回元素的索引,在关联数组的情况下,它将返回所选随机元素的键。
<?php $colors = array("red", "black", "blue", "green", "white", "yellow"); echo "Color of the day: ". $colors[array_rand($colors)]; ?>
array_slice($arr, $offset, $length)
此函数用于创建任何数组的子集。使用这个函数,我们定义了起点($offset,它是子集开始的数组索引)和长度(或者,子集中所需的元素数量,从偏移量开始)。