• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

别人帮我写了个可以传参的数组过滤函数,请问怎么用

PHP admin 12个月前 (06-08) 4次浏览 未收录 0个评论
文章目录[隐藏]

这个就是删除数组中小于123的,
我做实验,结果不行,请问怎么改改?

边学习,边研究,不会删除的数组的元素..

$arr = Array(1 , 2 , 3713231987,3710001690,3713182016,3714441990,3713231932);



user_array_filter($arr, 'myGt' , 123 ) ;

echo '
';print_r($arr);echo '

';

function user_array_filter( &$array, $callback )
{
$args = func_get_args(); //把function 所有参数保存成数组;

if( count($args) $v )
{
$result = $callback($v);
if( !$result )
{
return false;//★★★★★★★★★★★★★★★★★★★★★★
}
}
}
else
{
$limit = $args[2]; // [0]->处理数组 , [1]->function , [2]->value

foreach( $array as $k => $v )
{
$result = $callback($v, $limit);
if( !$result )
{
return false;//★★★★★★★★★★★★★★★★★★★★★★
}
}
}

}

function myGt($val, $limit = 88){
if ($val >= $limit)
return true;
return false;
}

回复内容:

这个就是删除数组中小于123的,
我做实验,结果不行,请问怎么改改?

边学习,边研究,不会删除的数组的元素..

$arr = Array(1 , 2 , 3713231987,3710001690,3713182016,3714441990,3713231932);



user_array_filter($arr, 'myGt' , 123 ) ;

echo '
';print_r($arr);echo '

';

function user_array_filter( &$array, $callback )
{
$args = func_get_args(); //把function 所有参数保存成数组;

if( count($args) $v )
{
$result = $callback($v);
if( !$result )
{
return false;//★★★★★★★★★★★★★★★★★★★★★★
}
}
}
else
{
$limit = $args[2]; // [0]->处理数组 , [1]->function , [2]->value

foreach( $array as $k => $v )
{
$result = $callback($v, $limit);
if( !$result )
{
return false;//★★★★★★★★★★★★★★★★★★★★★★
}
}
}

}

function myGt($val, $limit = 88){
if ($val >= $limit)
return true;
return false;
}

将user_array_filter里面的else改成下面代码

  else
    {
        $limit = $args[2];    // [0]->处理数组 , [1]->function , [2]->value

        foreach( $array as $k => $v )
        {
            $result = $callback($v, $limit);
            if( !$result )
            {
                unset($array[$k]);
            }
        }
    }
    
    
    
    

ps:你要删除数组元素的话可以foreach数组然后在循环里面判断不满足条件的把整个键unset()掉就可以


39MO , 版权所有丨如未注明 , 均为原创丨转载请注明原文链接:别人帮我写了个可以传参的数组过滤函数,请问怎么用
喜欢 (0)
[1353713598@qq.com]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址