配列内の最大値を検索する関数を作成しています。しかし、私はこの例を持っていると言う、配列内と配列外の両方の最大値が指定されています
function MaxArray($arr)
{
return max($arr);
}
$arr = array(array(141,151,161), 2, 3, array(101, 202, array(303,404)));
print_r(MaxArray($arr));
これは、アレイ内の最高値であるので、私は、出力のためにしたいことは404を取得することで値Array ([0] => 141 [1] => 151 [2] => 161)
を返します。どんな洞察?ありがとう。あなたの関数
function MaxInArray ($arr) {
$m = NULL;
foreach ($arr as $v) {
if (is_array($v)) $v = MaxInArray($v);
if (is_null($m) || $v > $m) $m = $v;
}
return $m;
}
の変更は、それが再帰作ったとして
は、最初の配列を平らたとえばanonymous functionDocsこれはいくつかの小さなコードで解決することができると組み合わせます。 –