php去掉数组中的空值array_filter
作者:xlnxin发布时间:2023-09-25分类:其他相关教程浏览:176
导读:array_filter()函数用回调函数过滤数组中的元素。该函数把输入数组中的每个键值传给回调函数。如果回调函数返回true,则把输入数组中的当前键值返回给结果数组。数组键名...
array_filter() 函数用回调函数过滤数组中的元素。
该函数把输入数组中的每个键值传给回调函数。如果回调函数返回 true,则把输入数组中的当前键值返回给结果数组。数组键名保持不变。
语法
array array_filter ( array $array [, callable $callback [, int $flag = 0 ]] )
参数 | 描述 |
---|---|
array | 必需。规定要过滤的数组。 |
callback | 可选。规定要用的回调函数。 |
flag | 可选。决定 callback 接收的参数形式:
|
<?php function test_odd($var) { return($var & 1); } $a1=array("a","b",2,3,4); print_r(array_filter($a1,"test_odd")); ?>
方法一:array_filter函数+使用empty判断
array_filter 函数是 PHP 自带的一个函数,用于过滤数组中的数据。该函数接受一个数组作为参数,并返回一个新的过滤后的数组。代码实现如下:
$arr = array("foo", "", "bar", null); $new_arr = array_filter($arr, function($value) { return !empty($value); // 回调函数,用于过滤数组中的数据 }); print_r($new_arr); // 输出 array('foo', 'bar')
在这段代码中,我们首先定义了一个数组 $arr ,该数组包含 4 个元素,其中 2 个元素是空值。然后我们使用 array_filter 函数,并创建一个回调函数,该函数使用 empty 函数来判断数组元素是否为空值。如果元素不为空,则返回 true ,否则返回 false 。使用 array_filter 函数,我们可以获取到过滤后的新数组 $new_arr 。
方法二:使用foreach循环+unset删除
除了使用 PHP 自带的 array_filter 函数,我们也可以使用 foreach 循环配合 unset 函数来删除数组中的空值。具体示例如下:
$arr = array("foo", "", "bar", null); foreach ($arr as $key => $value) { if (empty($value)) { unset($arr[$key]); } } print_r($arr); // 输出 array('foo', 'bar')
在这段代码中,我们首先定义了一个数组 $arr ,该数组包含 4 个元素,其中 2 个元素是空值。然后我们使用 foreach 循环,遍历数组中的每个元素。如果该元素为空值,我们使用 unset 函数删除该元素。最后使用 print_r 函数输出新的数组。
标签:php
- 其他相关教程排行
-
- 1查找对话框跑出屏幕外看不见了,怎么拖回来?
- 2小程序和H5中canvas卡顿的性能优化方向和实践
- 3小程序Cannot read property 'enableUpdateWxAppCode'解决方法
- 4解决小程序反编译出现 app-service.js
- 5expose_php = On/Off,是干什么的?底层原理是什么?
- 6微信小程序反编译工具 | unveilr
- 7微信小程序反编译报SyntaxError: Unexpected token ‘}‘ 不完美的解决方法
- 8安卓手机获取scrollTop高度为0解决方法
- 9解决return function(env,dd,global){$gwxc=0;var root={"tag":"wx-page"};root.children=[]
- 最近发表