0

次のような配列があります。

array(10) {
  [0]=>
  array(4) {
    [0]=>
    array(5) {
    ...
    }
    [1]=>
    array(5) {
    ...
    }
    [2]=>
    array(5) {
    ...
    }
    ["opt"]=>
    float(0.5)
  }
  [1]=>
  array(4) {
    [0]=>
    array(5) {
    ...
    }
    [1]=>
    array(5) {
    ...
    }
    [2]=>
    array(5) {
    ...
    }
    ["opt"]=>
    float(1)
  }
  .....
}

キー「opt」で最も高い値を持つ、最初のレイヤーの配列のキーを見つけたいと思います。あなたが私の言いたいことを理解してくれることを願っています。その文で申し訳ありませんが、説明するのがちょっと難しかったです!;)

編集:私が考えたのは、 foreach を使用してすべてのエントリを作成する max() の使用でした。これが最善の方法かどうかはわかりませんでした。

4

2 に答える 2

3

max() 関数を使用できます

配列の長さが一定の「n」の場合

$maxValue=max($array[0]["opt"],$array[1]["opt"], ... $array[n]["opt"]);

そうしないと

$i=0;
foreach($array as $value)  {
   $opts[$i]=$value["opt"];
   $i++;
}
$maxValue=max($opts);
于 2013-03-07T20:06:38.607 に答える