PHP array_filter

1.函数的作用:过滤数组中的值;

2.函数的参数:

  @params  array $array

  @params  callback $callback

  @params int $flag 【ARRAY_FILTER_USE_KEYARRAY_FILTER_USE_BOTH

3.注意点:

  1)不要在回调中改变数组本身;

4.

例子一:

1 <?php
2 /*
3  * 第二个元素是空格,并没有过滤掉
4  */
5 $arr = [‘‘,‘ ‘,null,0,‘0‘,‘\n‘,‘\t‘,-1,false];
6 print_r(array_filter($arr));

例子二:

1 <?php
2 /*
3  * 不过滤0
4  */
5 $arr = [‘‘,‘ ‘,null,0,‘0‘,‘\n‘,‘\t‘,-1,false];
6 print_r(array_filter($arr,‘strlen‘));

例子三:

1 <?php
2 /*
3  * 过滤奇数
4  */
5 $arr = [1,2,3,4,5,6];
6 print_r(array_filter($arr,create_function(‘$v‘,‘return !($v & 1);‘)));

时间: 2024-10-11 13:02:03

PHP array_filter的相关文章

巧用php中的array_filter()函数去掉多维空值

一直一维array_filter() 函数只能去除一维数组,其实这个函数也能去除多维数组: $arr =[ '0'=>array(), '1'=>'false', '2'=>'test', '3'=>'' ]; var_dump($arr); var_dump(array_filter($arr)); 最后发现所有的空值,包括array()空数组也没了,这个函数确实去除了所有的空值

array_filter,匿名函数

static function get_categoryII() { return array( array('id' => 1, 'c1id' => 1, 'name' => '1aaaa'), array('id' => 2, 'c1id' => 1, 'name' => '1bbb'), array('id' => 3, 'c1id' => 2, 'name' => '1bbbb'), array('id' => 4, 'c1id' =&g

array_filter、find_in_set查询id是否在id集合中、concat连接字符串,ifnull、if用法

1:array_filter检查每个元素是不是数字 if(array_filter($this->data['log_id'] ,'is_numeric') !== $data['log_id']) echo '000'; 2:concat连接字符串,ifnull.if用法update logset users = concat(ifnull(users,''),if(users,',411','411'))where log_id between 453729 and 453740; 3:fi

Warning: array_filter() expects parameter 2 to be a valid callback

Warning:  array_filter() expects parameter 2 to be a valid callback, function 'checkMonth' not found or invalid function name in path\to\xxxModel.php on line 36 下面是相关的Code片段 - php版本:5.6: function checkMonth($v){     return $v == $this->month; } funct

php数组函数-array_filter()

array_filter()函数用回调函数过滤数组中的元素,如果自定义过滤函数 返回true,则被操作的数组的当前值就会被包含在返回的结果数组中,并 将结果组成一个新的数组.如果原数组是一个关联数组,键名保持不变. array_filter(array,function); array:必需.规定输入的数组 function:必需.自定义函数的名称 <?php function myfunction($v){    if($v === 'Horse'){        return true; 

php中array_map,array_filter,array_walk区别

在php中array_map,array_filter,array_walk三个函数都是对数据操作的,下面我来介绍这三个函数的用法与区别. array_walk: array_walk()返回布尔值,如果回调函数需要直接作用于数组中的值,则给回调函数的第一个参数指定为引用.这样任何对这些单元的改变也将会改变原始数组本身.此函数可以同时获取到数组的key和value. array_map: array_map() 返回一个数组,该数组包含了 arr1 中的所有单元经过 callback 作用过之后

php中利用array_filter过滤数组为空值

[导读] 在我们开发过程中,判断数组为空时你会想到什么方法呢?首先想到的应该是empty函数,不过直接用empty函数判断为空是不对的,因为当这个值是多维数的时候,empty结果是有值的.其实我们可以利用array_filter函数 在我们开发过程中,判断数组为空时你会想到什么方法呢?首先想到的应该是empty函数,不过直接用empty函数判断为空是不对的,因为当这个值是多维数的时候,empty结果是有值的. 其实我们可以利用array_filter函数轻松去掉多维空值,而数组的下标没有改变,下

array_filter

定义和用法 array_filter() 函数用回调函数过滤数组中的元素,如果自定义过滤函数返回 true,则被操作的数组的当前值就会被包含在返回的结果数组中, 并将结果组成一个新的数组.如果原数组是一个关联数组,键名保持不变. (PHP 4 >= 4.0.6, PHP 5) array_filter -- 用回调函数过滤数组中的单元 array array_filter ( array input [, callback callback] ) array_filter() 依次将 input

巧用php中的array_filter()函数去掉多维空值的代码分享

在我们开发过程中,判断数组为空时你会想到什么方法呢?首先想到的应该是empty函数,不过直接用empty函数判断为空是不对的,因为当这个值是多维数的时候,empty结果是有值的 其实我们可以利用array_filter函数轻松去掉多维空值,而数组的下标没有改变,下面是举例用法: <?php $array = array( 0 => 'nicegy', 1 => false, 2 => 1, 3 => null, 4 => '', 5 => 'http://www.