Avatar billede mkjaer Nybegynder
27. januar 2006 - 12:59 Der er 6 kommentarer og
1 løsning

Array med flere variabler

Hejsa,

Jeg har brug for at lave et array, som indeholder 2 værdier for hvert sæt. Dels skal jeg gemme en dato og dels et stykke tekst. F.eks. som her: $array["dato","tekst"];

Når jeg har fyldt array'et vil jeg gerne sortere på datoen, og udskrive indholdet i array'et, så jeg noget a la:

dato2 tekst2
dato1 tekst1
dato4 tekst4
dato3 tekst3

Hvordan griber jeg det an?
Avatar billede x4all_dk Nybegynder
27. januar 2006 - 13:18 #1
Lav et Array med et Array

<?php
$ar = array(
      array("2006-12-31", "tekst1"),
      array("2006-12-30", "tekst2"),
      array("2006-11-31", "tekst3"),

    );

array_multisort($ar[0], SORT_ASC,
              $ar[1], SORT_ASC);

var_dump($ar);
?>

Evt. kan du nøjes med array_sort($ar);
Avatar billede mkjaer Nybegynder
27. januar 2006 - 13:34 #2
Det ser fornuftigt. Jeg vil gerne tilføje til array'et i flere omgange og altid kun et sæt ad gangen. How to?

Når jeg skal udlæse array'et, kan det så evt. gøres via en while-løkke, så jeg kan formatteret outputet og puttet i en tabel?
Avatar billede net-base.dk Nybegynder
27. januar 2006 - 13:45 #3
$array[] = array("dato" => "2006-01-17" , "text" => "din tekst");
$array[] = array("dato" => "2006-01-15" , "text" => "din tekst");
$array[] = array("dato" => "2006-01-16" , "text" => "din tekst");

dette skulle gerne give et 3D array. men nemt kan løbes i gennem med en while løkker.
Avatar billede mkjaer Nybegynder
27. januar 2006 - 13:48 #4
'net-base.dk' vil du ikke lige give et eksempel på hvordan jeg trække data i en while-løkke, og hvordan jeg sortere array'et?
Avatar billede net-base.dk Nybegynder
27. januar 2006 - 13:57 #5
Sådan er godt nok skrevet i en for løkke nok giver jo det samme resultat...

Håber du kan bruge mit svar til noget...

<?php
$array[] = array("dato" => "2006-01-17" , "text" => "din tekst");
$array[] = array("dato" => "2006-01-15" , "text" => "din tekst");
$array[] = array("dato" => "2006-01-16" , "text" => "din tekst");

// Sortere array så den første date kommer først
sort($array);

// sortere array så den sidste date kommer først
rsort($array);

for( $x=0 ; $x<count($array) ; $x++ ) {
    echo "datoen her".$array[$x]["dato"];
    echo "Text: ".$array[$x]["text"];
    echo "<br>";
}
?>
Avatar billede mkjaer Nybegynder
27. januar 2006 - 14:03 #6
Tak net-base.dk - det var nøjagtig hvad jeg søgte.
Avatar billede net-base.dk Nybegynder
27. januar 2006 - 14:06 #7
var så lidt...
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

Seneste spørgsmål Seneste aktivitet
I går 21:00 Libre Office Impress Af Frank i Andre styresystemer
I går 11:47 VB script Af Jenshentze i Word
I går 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel