今天在翻看手冊(cè)查詢array_filter()的使用細(xì)節(jié)時(shí),看到了個(gè)小關(guān)鍵點(diǎn):If no callback is supplied, all entries of input equal to FALSE (see converting to boolean) will be removed. 如果沒有給出回調(diào)函數(shù),所有的等于 FALSE 的元素將會(huì)被移除掉,這不正好可以用來過濾一些有空元素的數(shù)組嗎?連忙寫個(gè)例子測(cè)試一下想法:
$entry = array(
0 => '藍(lán)色夏威夷的博客',
1 => false,
2 => 1,
3 => null,
4 => '',
5 => 'http://m.ythuaji.com.cn',
6 => '0',
7 => array(),
8 => 0
);
$validarr = array_filter($entry);
print_r($validarr);
//輸出結(jié)果:
Array
(
[0] => 藍(lán)色夏威夷的博客
[2] => 1
[5] => http://m.ythuaji.com.cn
)
一些可以轉(zhuǎn)化為布爾型FALSE的數(shù)組元素都被移除了,對(duì)我們想要得到一個(gè)有效的數(shù)組作了一個(gè)非常全面的過濾。