您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

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

2025/8/9 22:33:48发布23次查看
这个就是删除数组中小于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()掉就可以
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product