Gå til innhold

sortering av array


Anbefalte innlegg

Lurer på om det finnes en måte å sortere dette arrayet på, ved [id].

 

 

Array
(
   [0] => Array
       (
           [id] => 3
           [0] => 4
       )

   [1] => Array
       (
           [id] => 4
           [0] => 6
       )

   [2] => Array
       (
           [id] => 2
           [0] => 1
       )
)

 

Dvs at jeg får det slik:

Array
(
   [0] => Array
       (
           [id] => 2
           [0] => 1
       )

   [1] => Array
       (
           [id] => 3
           [0] => 4
       )

   [2] => Array
       (
           [id] => 4
           [0] => 6
       )
)

Lenke til kommentar
Videoannonse
Annonse

Bruk array_multisort(). (Om hukommelsen min serves me right)

 

<?php

function array_clean ( $array, $key ) {
	$tmp = array ();
	foreach ( $array as $var => $val )
		if ( array_key_exists ( $key, $val ) )
			$tmp[$var] = $val[$key];
		else
			$tmp[$var] = null;
	return $tmp;
}

array_multisort ( array_clean ( $myArray, 'id' ), SORT_ASC, $myArray );

?>

Endret av Jonas
Lenke til kommentar

Kanskje enklere, men mye mindre fleksibelt og dynamisk. Koden kan ikke brukes til noe annet enn akkurat det den først ble skrevet for. array_clean() er dessuten en funksjon som forhåpentligvis eksisterer i alles rammeverk, i hvert fall i de jeg benytter meg av, så alle tilsvarende sorteringer er one-linere.

Endret av Jonas
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...