PHP是一种流行的服务器端编程语言,常用于Web开发和动态网站的创建。在PHP编程中,数组是一个常见的数据类型。有时候我们需要过滤掉数组中为空的元素,本篇文章就将为您介绍如何去掉数组为空的方法。
1.使用foreach循环遍历数组
可以使用foreach循环遍历数组,然后使用empty()函数判断每个元素是否为空,如果为空则使用unset()函数移除该元素。代码如下:
$arr = array('php', '', 'java', '', 'python'); foreach($arr as $key=>$value){ if(empty($value)){ unset($arr[$key]); } } print_r($arr);
运行结果:
Array ( [0] => php [2] => java [4] => python )
2.使用array_filter()函数
PHP提供了一个内置函数array_filter(),该函数可以过滤掉数组中为空的元素。代码如下:
$arr = array('php', '', 'java', '', 'python'); $arr = array_filter($arr); print_r($arr);
运行结果:
Array ( [0] => php [2] => java [4] => python )
3.使用array_diff()函数
另外还可以使用array_diff()函数,该函数可以返回两个数组之间的差集,我们可以将一个空数组和原数组进行差集运算,将差集结果返回。代码如下:
$arr = array('php', '', 'java', '', 'python'); $arr = array_diff($arr, array('')); print_r($arr);
运行结果:
Array ( [0] => php [2] => java [4] => python )
4.使用array_reduce()函数
最后,我们可以使用array_reduce()函数,该函数从左到右迭代数组,将每个元素与之前的结果结合。我们可以在回调函数中判断元素是否为空,如为空则返回之前的结果,否则将元素加入结果数组中。代码如下:
$arr = array('php', '', 'java', '', 'python'); $arr = array_reduce($arr, function($result, $val){ if(!empty($val)){ $result[] = $val; } return $result; }, array()); print_r($arr);
运行结果:
Array ( [0] => php [1] => java [2] => python )
以上就是几种去掉数组为空的方法,具体可以根据自己的需求选择适合自己的方法。
以上是php怎么去掉数组为空的元素的详细内容。更多信息请关注PHP中文网其他相关文章!