时间:2021-05-26
array_filter() 函数根据回调函数过滤数组中的值,省略回调函数则默认过滤空值。
array_filter()
语法:
array_filter( array[, function] )
1、省略回调函数过滤数组单元空值的例子
<?php$array = array( 0 => ', 1 => 'www.jb51.net', 2 => null, 3 => 1, 4 => '', 5 => false, 6 => '0');print_r(array_filter($array));?>运行该例子输出:
Array
(
[0] =>
[1] => www.jb51.net
[3] => 1
)
过滤的空值,与empty()函数对应,具体包括:0,'0','',false,array(),null等,具体参见:《PHP empty() 检测一个变量是否为空》一文。
2、使用回调函数过滤指定值
$array = array( 0 => 'www.jb51.net', 1 => 1, 2 => 6, 3 => '', 4 => false, 5 => 0, 6 => -6, 7 => '8');function filter($v){ if( is_int($v) && $v % 2 == 0 ){ return true; } else { return false; }}print_r(array_filter($array,"filter"));运行该例子输出:
Array
(
[2] => 6
[5] => 0
[6] => -6
)
如果有回调函数,array_filter函数会依次将数组单元的值传递到回调函数,如果回调函数返回true,则该单元会被保留,反之则该数组单元则会被删除。
注意,如果被过滤的数组是关联数组,键名会保持不变。array_filter操作的是原数组的一个副本,如果要想改变原数组,则需要重新赋值:
$array = array_filter($array);
3、除去数组中的空字符元素
<?php $str1_array=array('','','//www.jb51.net','','1654',''); $str1_array=array_filter($str1_array); print_r($str1_array); ?>显示结果:
Array
(
[0] =>
[2] => //www.jb51.net
[4] => 1654
)
到此这篇关于php array_filter除去数组中的空字符元素的文章就介绍到这了,更多相关array_filter除去数组中的空字符内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
php空数组的话,能够运用php函数array_filter().arrayarray_filter(array[,callbackcallback])arra
如果没有提供callback函数,array_filter()将删除input中所有等值为FALSE的条目。删除数组中为空值的元素就可以使用这个函数。复制代码代
其实我们可以利用array_filter函数轻松去掉多维空值,而数组的下标没有改变,下面是举例用法:上面代码输出结果为:Array([0]=>滔哥[2]=>1[
短闭包,也叫做箭头函数,是一种用php编写的短函数.当向函数中传递闭包时,这个功能是非常有用的,比如使用array_map或是array_filter函数时.这
本文实例讲述了php递归调用删除数组空值元素的方法。分享给大家供大家参考。具体如下:该函数可以删除数组里的所有空值元素,包含空字符串,空的数组等等。functi