一、与数组键、值操作相关的函数
1.array_values()
返回数组所有的值,下标是数字索引
<span style="font-size:18px;"><?php
$arr=array('w'=>'win','a'=>'apache','m'=>'mysql','p'=>'php');
$test=array_values($arr);
print_r ($test);</span>结果:Array( [0] => win [1] => apache [2] => mysql [3] => php)
2.array_keys(a,b,c)
默认返回所有键,a是必须值,指需要操作的数组;b,c是可选值,b是查找的值,选了则只返回该键名,c是关于类型是否严格比较,默认是false,true是打开
<span style="font-size:18px;"><?php
$arr=array('w'=>'win','a'=>'apache','m'=>'mysql','p'=>'php');
$test=array_keys($arr);
print_r ($test);</span>输出:Array( [0] => w [1] => a [2] => m [3] => p)<span style="font-size:18px;"><?php
$arr=array('w'=>'win','a'=>'apache','m'=>'mysql','p'=>'php');
$test=array_keys($arr,'mysql',true);
print_r ($test);</span>输出:Array( [0] => m)3.in_array(a,b,c)
判断值在不在数组中,在b中搜索a,存在返回true,不存在返回false,c表示是否严格比较
<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$arr=array('w'=>'win','a'=>'apache','m'=>'mysql','p'=>'php');
if (in_array('myql',$arr,true)){
echo '存在';
}else{
echo '不存在';
}</span>输出:不存在4.array_key_exists(a,b)
判断键在不在数组中,a是要检查的键,b是要操作的数组
<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$arr=array('w'=>'win','a'=>'apache','m'=>'mysql','p'=>'php');
if (array_key_exists('a',$arr)){
echo '存在';
}else{
echo '不存在';
}</span>输出:存在5.array_filp()
交换数组的键和值
<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$arr=array('w'=>'win','a'=>'apache','m'=>'mysql','p'=>'php');
$test=array_flip($arr);
print_r ($test);</span>输出:Array( [win] => w [apache] => a [mysql] => m [php] => p)6.array_reverse()
返回一个单元数组相反的数组(颠倒顺序)
<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$arr=array('w'=>'win','a'=>'apache','m'=>'mysql','p'=>'php');
$test=array_reverse($arr);
print_r ($test);</span>输出:Array( [p] => php [m] => mysql [a] => apache [w] => win)二、统计数组元素个数和唯一性的函数
1.count()
统计元素个数,加一个可选参数“1”,则计算子数组的元素个数
<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$arr=array('w'=>'win','a'=>'apache','m'=>'mysql','p'=>'php','LAMP'=>array('l','a','m','p'));
$test=count($arr,COUNT_RECURSIVE);
echo $test; //9</span>2.array_count_values()
返回一个数组,该数组用 input
数组中的值作为键名,该值在 input数组中出现的次数作为值。
<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$arr=array('w'=>'win','a'=>'apache','m'=>'mysql','p'=>'php','A'=>'apache');
$test=array_count_values($arr);
print_r ($test); //Array( [win] => 1 [apache] => 2 [mysql] => 1 [php] => 1)</span>3.array_unique()
移出数组中重复的值,键名以第一个遇到的为准
<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$arr=array('w'=>'win','a'=>'apache','m'=>'mysql','p'=>'php','A'=>'apache');
$test=array_unique($arr);
print_r ($test); //Array( [w] => win [a] => apache [m] => mysql [p] => php)</span>
三、使用回调函数处理数组的函数
1.array_fliter()
用回调函数过滤数组的单元
2.array_walk()
数组中的每个成员应用用户函数
3.array_map()
将回调函数作用到给定数组单元上
<span style="font-size:18px;"><?php
function cube ( $n )
{
return($n+2);
}
$a = array( 1 , 2 , 3 , 4 , 5 );
$b = array_map ( "cube" , $a );
print_r ( $b ); //Array( [0] => 3 [1] => 4 [2] => 5 [3] => 6 [4] => 7)
</span>
本文深入探讨PHP中数组键和值的操作函数,包括数组值获取、键获取、元素检查、键存在验证、数组反转、元素计数、唯一性统计等,并通过实例演示其用法。

被折叠的 条评论
为什么被折叠?



