array_filter() 函数用回调函数过滤数组中的值。
松滋网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、响应式网站等网站项目制作,到程序开发,运营维护。创新互联建站公司2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站。
该函数把输入数组中的每个键值传给回调函数。如果回调函数返回 true,则把输入数组中的当前键值返回结果数组中。数组键名保持不变。
例如:
?php
function test_odd($var)
{
return($var 1);
}
$a1=array("a","b",2,3,4);
print_r(array_filter($a1,"test_odd"));
?
运行结果:Array ( [3] = 3 )
扩展资料:
循环遍历数组,把有值的元素放进一个新数组中。
$arr = array();
foreach ($urlArr as $key = $val) {
if (empty($val)) {continue;}
$arr[] = $val;
}
$arr是去除空元素的新数组。
不行,两个是完全不同的结构
如果硬把数组,比如{1,2,3,4,5}存入数据库
唯一的方法是把"1,2,3,4,5"当作varchar存进去。
所以只能遍历这个数组然后分别吧1,2,3,4,5存进去。
当然,java框架也许会提供类似的方法,你传一个数组进去,他直接就抱存入数据库。但是内部也一定是拆开存的。
PHP 删除空数组常用解决方案:
利用foreach循环判断来删除为空的数组,注意:如果数组元素非常多的时候,使用循环处理效率会降低。示例如下:
?php
//定义数组
$arr=array(
"id"=1,
"name"="zhidao",
"url"=""
);
//循环判断
foreach($arr as $k=$v){
if(!$v){//判断是否为空(false)
unset($arr[$k]);//删除
}
}
print_r($arr);//Array ( [id] = 1 [name] = zhidao )
?
使用array_filter函数删除。array_filter是利用回调函数来对数组进行过滤,如果没有回调函数,那么默认就是删除数组中值为false的元素。示例如下:
?php
//定义数组
$arr=array(
"id"=1,
"name"="zhidao",
"url"=""
);
//array_filter函数对数组进行过滤
$newArr=array_filter($arr);
print_r($newArr);//Array ( [id] = 1 [name] = zhidao )
?