0

ループを使用したくありません (他に方法がない場合を除きます)。foreach ループを使用して 2 つの配列を作成する方法を知っていますが、組み込み関数が PHP に存在するかどうか疑問に思っていました。

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

関数呼び出しの後に結果の 2 つの配列を取得したい:

$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組み込み関数はありますか?

注:キーはそのままにしておく必要があります。

4

1 に答える 1

2

array_filter()2回使用できます:

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

$top = array_filter($myArray, function($val){return ($val>0.3)});
于 2013-07-09T22:16:25.127 に答える