方法一:利用循环(本文以foreach为例)
语法结构如下:
foreach (array_expression as $value)
foreach (array_expression as $key => $value)
具体用法请参考:《php foreach的用法详解》,具体代码如下:
<?php
foreach( $arr as $k=>$v){
if( !$v )
unset( $arr[$k] );
}
?>这种方法比较简单,初学者便于理解,但是复杂度较高,消耗较多的内存,所以一般不建议使用。
方法二:利用array_filter()函数
立即学习“PHP免费学习笔记(深入)”;
语法结构如下:
array_filter( array $array [, callable $callback [, int $flag = 0 ]] ) : array
依次将 array 数组中的每个值传递到callback 函数。如果 callback 函数返回 true,则 array 数组的当前值会被包含在返回的结果数组中,数组的键名保留不变。
array 要循环的数组
callback使用的回调函数,如果没有提供 callback 函数,将删除 array 中所有等值为FALSE 的条目。
flag决定callback接收的参数形式:(1)ARRAY_FILTER_USE_KEY - callback接受键名作为的唯一参数。
(2)ARRAY_FILTER_USE_BOTH - callback同时接受键名和键值。
返回值:被过滤后的数组。
具体代码如下:
<?php
$arr = array(
0 => 'hello',
1 => false,
2 => -1,
3 => null,
4 => ''
);
echo "<pre>";
var_dump(array_filter($arr));
?>运行结果如下:
/* array(2) {
[0]=>
string(5) "hello"
[2]=>
int(-1)
} */以上就是掌握PHP删除数组中的空值的小技巧的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号