PHP数组的相关处理函数1

本文深入探讨PHP中数组键和值的操作函数,包括数组值获取、键获取、元素检查、键存在验证、数组反转、元素计数、唯一性统计等,并通过实例演示其用法。

一、与数组键、值操作相关的函数

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>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值