max() i multi-array... eller?

PHP

1 svar · 291 visningar · startad av herq

Medlem sedan aug. 2000238 inlägg
Trådstart#1

Har en multi-array som ser ut så här:

Array
(
    [1] => Array
        (
            [date] => 2004-12-10
            [close] => 21.80
        )

    [2] => Array
        (
            [date] => 2004-12-13
            [close] => 21.60
        )

    [3] => Array
        (
            [date] => 2004-12-14
            [close] => 21.80
        )

    [4] => Array
        (
            [date] => 2004-12-15
            [close] => 21.40
        )

    [5] => Array
        (
            [date] => 2004-12-16
            [close] => 21.70
        )
)

Nu vill jag ta ut det högsta och lägsta [close]-värdet som finns, alltså 21.80 och 21.40, (det spelar ingen roll att det finns flera likadana max-värden eller min för den delen).

Jag får inte riktigt till det med max()

Hur ska jag göra? (hjälp! snälla!)

(och nej, jag vill inte behöva loopa igenom arrayen o jämföra värden)

Medlem sedan sep. 2001118 inlägg
#2

herq skrev:

(och nej, jag vill inte behöva loopa igenom arrayen o jämföra värden)

Av prestanda-skäl lr? .. Jag är ingen expert på prestanda men .. Det är exakt så max-funktionen implementeras. Det enda sättet att hitta högsta eller lägsta värdet i en osorterad mängd är att loopa igenom alla värden.

En algoritm du skriver för att lösa ditt specifika problem är förmodligen mer effektiv än en generell som klarar flera typer av input-värden.

384 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
124 ms — deklarationer (db)
130 ms — hämta statistik (db)
128 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)