PHP数组查找函数

array_column:返回数组中指定的一列,接受三个参数,第一个为需要取出数组列的多维数组,如果是包含对象的一维数组,那么只有其public属性会被直接取出,如果想要取出private和protected属性,必须实现__get()和__isset()方法。第二个参数为需要返回值的列,可以是数组的列索引或者列的键名,也可以是属性名,如果传入null则返回整个数组。第三个参数为可选的,作为返回数组的索引或者键的列,如果不传此参数则返回数组使用数字索引。

array_key_exists:检查数组里是否有指定的键名或索引,接受两个参数,第一个参数为要查找的键名或索引,第二个参数为要检查的数组,如果数组中有指定的键或索引则返回true,失败或未找到则返回false。键名可以是任何能作为键的值。

array_key_first:PHP7.3起,如果数组不为空,则返回数组中的第一个键,否则返回null。

array_key_last: PHP7.3起,如果数组不为空,则返回数组中的最后一个键,否则返回null。不会影响内部的指针。

array_keys:返回数组中部分的或所有的键名,接受三个参数,第一个参数为要进行操作的数组,第二个参数为可选的指定包含哪个值的键会被返回,默认为null,返回所有的键,第三个参数为可选的指定在搜索时是否使用严格比较,默认为false。

array_rand:从数组中随机取出一个或多个单元,接受两个参数,第一个参数为要进行操作的数组,第二个参数为可选的返回的单元数量,默认为1,如果数量超过数组长度则会产生一个警告,并返回null。如果只取一个,则返回值为随机单元的键,如果取多个,则返回包含键名的数组。

array_search:在数组中搜索给定的值,如果成功则返回首个相应的键名,接受三个参数,第一个参数为要进行查找的值,区分大小写,第二个参数为要进行查找的数组,第三个参数为可选的指定在搜索时是否使用严格比较,默认为false。如果找到则返回键,否则返回false,如果要查找的值出现多次则返回第一个匹配的键。

array_slice:从数组中取出一部分。接受四个参数,第一个参数为要进行操作的数组,第二个参数为起始位置,如果为负数则从数组末端开始计算,否则从数组头部开始计算。第三个参数为可选的长度,如果为正数,则返回此长度的数组,如果为负数,则返回的数组长度为从起始位置开始到从末尾开始此长度的字符位置为止。 默认为null,表示从起始位置到数组末尾。第四个参数为可选的标识,标识是否保留键名,默认为false不保留。

array_values:返回数组中所有的值,并建立数字索引。

in_array:检查数组中是否存在某个值,接受三个参数,第一个参数为要进行查找的值,区分大小写,第二个参数为要进行查找的数组,第三个参数为可选的指定在搜索时是否使用严格比较,默认为false。如果找到返回true,否则返回false。

key_exists:array_key_exists的别名。

extract:从数组中将变量导入到当前的符号表,接受三个参数,第一个参数为要进行操作的数组引用,数组的键会当作变量名,值作为变量的值。对每个键/值对都会在当前的符号表中建立变量。第二个参数为可选的提取标记,用于指定在遇到非法的或者数字索引时的处理方式,默认为EXTR_OVERWRITE。第三个参数为可选的前缀,前缀和数组键名之间会自动加上一个下划线,如果附加了前缀后的结果不是合法的变量名,将不会导入到符号表中。返回成功导入到符号表中的变量数。

<?php
$ar1=array(
    array("a"=>'a',"b"=>"b","c"=>"c"),   
    array("a"=>'A',"b"=>"B","c"=>"C"), 
    array("a"=>'aA',"b"=>"bB","c"=>"cC")
);
$ar2=array(1=>"a","02"=>"b",3=>"e",4=>"04",5=>"4");
var_dump(array_column($ar1,"a"));
var_dump(array_column($ar1,"a","c"));
var_dump(array_column($ar1,null,"c"));
var_dump(array_key_exists("a",$ar1));
var_dump(array_key_first($ar1));
var_dump(array_key_last($ar1));
var_dump(array_keys($ar2,4));
var_dump(array_keys($ar2,4,true));
var_dump(array_keys($ar2,"4",true));
var_dump(array_rand($ar2));
var_dump(array_rand($ar2,2));
var_dump(array_search("4",$ar2,true));
var_dump(array_search(4,$ar2));
var_dump(array_slice($ar2,-4,-2,true));
var_dump(array_values($ar2));
var_dump(in_array(4,$ar2));
var_dump(in_array(4,$ar2,"true"));
var_dump(extract($ar2,EXTR_PREFIX_INVALID,"ext"));
echo $ext_02."\n";
?>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值