Avatar billede 4u2x Nybegynder
25. juni 2008 - 13:13 Der er 5 kommentarer og
2 løsninger

fjern værdi i array

har et multi-dimensionelt array som ser således ud:

[0] => Array
        (
            [dagnr] => -161
            [dagsvaegt] => -1.75
            [kursvaerdi] => -150000
        )

    [1] => Array
        (
            [dagnr] => 0
            [dagsvaegt] => 0
            [kursvaerdi] => 435000
        )

    [2] => Array
        (
            [dagnr] => 92
            [dagsvaegt] => 1
            [kursvaerdi] => 940500
        )

hvordan får jeg php til at fjerner array værdier hvor [dagnr] er under 0 ?

har kigget lidt på array_merge, men ved ikke hvordan jeg skal tilpasse den til mit formål.
Avatar billede jakobdo Ekspert
25. juni 2008 - 13:38 #1
Det nemmeste er nok:

for($i = 0; $i < count($dit_array); $i++){
if($dit_array[$i]['dagnr'] < 0){
unset($dit_array[$i]);
}
}
Avatar billede coderdk Praktikant
25. juni 2008 - 13:45 #2
En anden mulighed er:

function f($e) { return $e['dagnr'] >= 0; }
$dit_array = array_filter( $dit_array, "f" );
Avatar billede coderdk Praktikant
25. juni 2008 - 13:47 #3
eller:

$dit_array = array_filter( $dit_array, create_function( '$e', 'return $e["dagnr"] >= 0;' ) );

:D
Avatar billede 4u2x Nybegynder
25. juni 2008 - 13:52 #4
de virker begge to, synes i begge skal have point. jakobdo fordi du var først og coderdk fordi du kom med et lige så kyndigt svar og mere kompakt kode.
Avatar billede coderdk Praktikant
25. juni 2008 - 13:53 #5
:)
Avatar billede jakobdo Ekspert
25. juni 2008 - 14:00 #6
Svar!
Avatar billede jakobdo Ekspert
25. juni 2008 - 14:18 #7
Takker for point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester