Avatar billede elskermad.dk Nybegynder
03. november 2005 - 18:58 Der er 4 kommentarer og
1 løsning

bland et array

Hej eksperter!

Hvordan blander man et array så rækkenfølgen af værdierne ikke er ens længere? Jeg har fundet array_shuffle, men ligesom jeg ikke kan få den til at virke!

Jeg giver ikke værdien en key bruger blot $array[] = "Værdi1"; $array[] = "Værdi2" osv... også skal den efter en blanding måske være Værdi43, værdi453, værdi1 osv
Avatar billede bromer Nybegynder
03. november 2005 - 19:04 #1
Vi jeg bruger følgende kode:

<?php

$array[] = 'test1';
$array[] = 'test2';
$array[] = 'test3';
$array[] = 'test4';

var_dump($array);

shuffle($array);

var_dump($array);


?>

får jeg følgende output:

array(4) {
  [0]=>
  string(5) "test1"
  [1]=>
  string(5) "test2"
  [2]=>
  string(5) "test3"
  [3]=>
  string(5) "test4"
}
array(4) {
  [0]=>
  string(5) "test2"
  [1]=>
  string(5) "test1"
  [2]=>
  string(5) "test3"
  [3]=>
  string(5) "test4"
}

Det ser da ud til at virke som det skal.
Avatar billede elskermad.dk Nybegynder
03. november 2005 - 19:40 #2
hvad gør var_dump ?
Avatar billede bromer Nybegynder
03. november 2005 - 19:50 #3
var_dump laver et dump af en variabel så man kan se hvad den indeholder. Det er meget brugbart når man arbejder med arrays eller objekter, der ikke umiddelbart bare kan printes direkte.

Jeg benytter var_dump 2 gange, nemlig lige før og lige efter jeg har kørt shuffle() på arrayet. Den første gang får jeg følgende output:

array(4) {
  [0]=>
  string(5) "test1"
  [1]=>
  string(5) "test2"
  [2]=>
  string(5) "test3"
  [3]=>
  string(5) "test4"
}

der altså siger at jeg har dump'et et array med 4 elementer. Elementerne i (i rækkefølge) "test1","test2","test3" & "test4".

Så kører jeg shuffle() og dumper det igen, hvormed jeg får:

array(4) {
  [0]=>
  string(5) "test2"
  [1]=>
  string(5) "test1"
  [2]=>
  string(5) "test3"
  [3]=>
  string(5) "test4"
}

som du kan se indeholder arrayet de samme værdier, men i en anden rækkefølge.
Avatar billede elskermad.dk Nybegynder
03. november 2005 - 20:41 #4
smid et svar :)
Avatar billede bromer Nybegynder
03. november 2005 - 21:24 #5
Det kan du tro :) Du fik det til at virke?
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