php分享二十四:数组

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

2:利用array_filter和strlen快速过滤数组中等于0的值

$path = str_replace(array('/', '\'), DIRECTORY_SEPARATOR, $path);
$parts = array_filter(explode(DIRECTORY_SEPARATOR, $path), 'strlen');

 注意:对于array_filter,如果没有提供 callback 函数, 将删除 input 中所有等值为 FALSE 的条目。如果用strlen判断,则速度比不传值快。

3:array array_keys ( array $array [, mixed $search_value [, bool $strict = false ]] )

返回数组,如果没有找到返回空数组array();

$array = array(
    'a1' => 100,
    'a2' => 100,
    'a3' => 2342,
    'a4' => 343,
);
asort($array);
print_r(array_keys($array, array_shift($array)));

 输出:

Array
(
    [0] => a1
    [1] => a2
)

 4: mixed array_search ( mixed $needle , array $haystack [, bool $strict = false ] )

如果找到了 needle 则返回它的键,否则返回 FALSE

如果 needlehaystack 中出现不止一次,则返回第一个匹配的键。要返回所有匹配值的键,应该用 array_keys() 加上可选参数 search_value 来代替。

注意:此函数可能返回布尔值 FALSE,但也可能返回等同于 FALSE 的非布尔值。请阅读 布尔类型章节以获取更多信息。应使用 === 运算符来测试此函数的返回值。

5:

 
原文地址:https://www.cnblogs.com/Alight/p/5211623.html