PHP中的数组(查找)

array_filter

用回调函数过滤数组中的单元

依次将 array 数组中的每个值传递到 callback 函数。如果 callback 函数返回 TRUE,则 input 数组的当前值会被包含在返回的结果数组中。数组的键名保留不变。

function odd($var)
{
    return $var & 1;
}
$array1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
print_r(array_filter($array1, "odd"));

Array
(
    [a] => 1
    [c] => 3
    [e] => 5
)

array_rand

从数组中随机取出一个或多个单元

返回索引

$arr = [11,22,33,44,55];
$result = array_rand($arr, 2);
print_r($result);

Array
(
    [0] => 2
    [1] => 3
)

array_search

在数组中搜索给定的值,如果成功则返回相应的键名

返回索引

$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
$key = array_search('green', $array);
echo $key;

2

in_array

检查数组中是否存在某个值

$result = in_array(11,[11,22,33]);
var_dump($result);

bool(true)

array_key_exists

检查给定的键名或索引是否存在于数组中

$search_array = array('first' => 1, 'second' => 4);
if (array_key_exists('first', $search_array)) {
    echo "The 'first' element is in the array";
}

The 'first' element is in the array

array_key_exists() 与 isset() 的对比

isset() 对于数组中为 NULL 的值不会返回 TRUE,而 array_key_exists() 会。

$search_array = array('first' => null, 'second' => 4);
$r = isset($search_array['first']);
var_dump($r);
$r = array_key_exists('first', $search_array);
var_dump($r);

bool(false)
bool(true)

key_exists

别名 array_key_exists

参考

  • PHP手册
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值