---
title: "Sortera array"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/147471-sortera-array"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "spetzen"
published: "2006-05-30T11:46:56.000Z"
updated: "2006-06-01T19:01:53.000Z"
replies: 8
views: 555
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/147471-sortera-array"
---

# Sortera array

## #1 — spetzen, 2006-05-30T11:46Z

Hejsan

Jag har en array som är uppbyggd på följande sett:

```php
array(
1 => array('a', 'd', 'c'),
2 => array('c', 'b'),
3 => array('i', 'e', 'u')
)
```

Jag skulle vela sortera det efter bosktavsordning så det blir på följande vis:

```php
array(
1 => array('a', 'c', 'd'),
2 => array( 'b', 'c'),
3 => array('e', 'i', 'u')
)
```

/Spetz

Permalänk: https://www.webforum.nu/p/147471

## #2 — aasah, 2006-05-30T11:54Z

Funkar inte [asort](http://se.php.net/manual/sv/function.asort.php) på de inre arrayerna? Eller [multisort](http://se.php.net/manual/sv/function.array-multisort.php)?

Permalänk: https://www.webforum.nu/p/1821628

## #3 — spetzen, 2006-05-30T11:57Z

Har knappt hållt på med arrayer så du kanske kan visa hur man kör asort på just den inre arrayen, det felet jag gjort är antagligen att jag kör asort på hela arrayen och då blir det inte helt rätt.

Permalänk: https://www.webforum.nu/p/1821629

## #4 — aasah, 2006-05-30T12:00Z

```php
foreach($arr as $k => $sub) {
   echo "$k = > ";   
   echo asort($sub);
   echo "\n";
}
```

Permalänk: https://www.webforum.nu/p/1821631

## #5 — Pedda, 2006-05-30T12:03Z

array_multisort borde man ju kunna använda.
Tyvärr så sysslar man ju så lite med sånt.

Permalänk: https://www.webforum.nu/p/1821632

## #6 — spetzen, 2006-05-30T12:07Z

Kör jag sådär skrivs det bara ut 111?

Permalänk: https://www.webforum.nu/p/1821637

## #7 — aasah, 2006-05-31T13:14Z

> **aasah skrev:**
>
> ```php
> foreach($arr as $k => $sub) {
>    echo "$k = > ";   
>    echo asort($sub);
>    echo "\n";
> }
> ```

Detta ger 111? Det är inte möjligt...   :q "$arr" ska alltså bytas mot namnet på din två-dim array.

Vad händer om du kör array_multisort ($arr) då?

Permalänk: https://www.webforum.nu/p/1822077

## #8 — spetzen, 2006-06-01T11:38Z

Jo. använde jag funktionen sådär skrevs 111 ut men efter lite redigering så kom jag på varför. Asort returnerar ju ett booleskt värde varje gång den körs där 1 står för true, vilket alltså säger att den lyckades med sorteringen. Så istället för att skriva ut inne i funktionen så gjorde jag på detta sätt istället vilket gjorde att det fungerade som jag ville:

```php
foreach($arr as $k => $sub) {   
   asort($sub); 
}
echo $arr;
```

Det kan ju förövrigt varit så du menade att jag skulle göra egentligen.

Tack för hjälpen
MvH Spetz

Permalänk: https://www.webforum.nu/p/1825372

## #9 — aasah, 2006-06-01T19:01Z

...

Permalänk: https://www.webforum.nu/p/1825520

---

Tråden på webben: https://www.webforum.nu/amne/php/147471-sortera-array
