将数组拆分为两个数组,其值大于和小于给定的针PHP

时间:2013-07-09 22:12:23

标签: php arrays

我不想使用循环(除非没有其他方法)。我知道如何使用foreach循环和构建2个数组来做这个,但我想知道PHP中是否存在内置函数。

$arr = array(1 => 0.1, 2 => 0.20, 3 => 0.40, 4 => 0.60);

我希望在函数调用后得到两个数组:

$twoArrays = split_arrays($arr, 0.3);

$ twoArrays 会保留值:

array(
  0 => array(1 => 0.1, 2 => 0.20), 
  1 => array(3 => 0.40, 4 => 0.60)
);

基本上我希望1个数组保存所有值小于0.3 而另一个大于0.3

使用循环我可以做到,是否有PHP内置函数?

注意:我需要按原样保留

1 个答案:

答案 0 :(得分:2)

您可以使用array_filter()两次:

$bottom = array_filter($myArray, function($val){return ($val<=0.3)});

$top = array_filter($myArray, function($val){return ($val>0.3)});