/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Array problemer
Fra : Martin


Dato : 10-01-07 11:00

Ja, jeg er stødt ind i et mindre problem, som jeg ikke lige kan finde
løsningen på.

Jeg har en laaaang tekst, som så lige bliver bearbejdet lidt, så alle
ord kommer ned i et array. Dette virker helt fint

Arrayet ser nogenlunde sådan her ud:

$text = Array
(
[0] => subdomæne
[1] => på
[2] => adressen
......
[427] => god
[428] => brugergrænseflade
}

Så har jeg lavet en løkke som smider det hele ind i et nyt array

$out = array();
foreach($text AS $swarm) {
if($out[$swarm]) $out[$swarm]["count"]=$out[$swarm]["count"]+1;
else $out[$swarm] = array("count"=>1);
}

Ovenstående giver antallet 11 - dvs at den ikke plusser "count" og 1,
men den sætter dem ved siden af hinanden hvis jeg fx ændrer lægge til
linjen til $out[$swarm]["count"]+2; så bliver resultatet 21.

en var_dump på $out[$swarm]["count"] giver (int) 1 - så det er ikke
fordi nogle af dem er en tekststreng.

Det jeg gerne vil ende op med er et ganske simpelt array med som noget ala

$text = Array
(
[subdomæne] => Array { [count] => 3 }
[er] => Array { [count] => 15 }
......
}


PS: jeg har også prøvet php funktionen str_word_count, men da denne
åbenbart ikke kan lide æ ø og å, så bliver "subdomæne" til 2 forskellige
"ord" - altså ord 1: subdom og ord 2: ne

Jeg har også prøvet nogle af brugerkommentarernens funktioner, men der
er endnu ikke fundet den "perfekte"

 
 
Martin (10-01-2007)
Kommentar
Fra : Martin


Dato : 10-01-07 11:21

Martin wrote:
> if($out[$swarm]) $out[$swarm]["count"]=$out[$swarm]["count"]+1;
> else $out[$swarm] = array("count"=>1);

Nå jeg fik det til at fungere med
if($out[$swarm]) $out[$swarm]=$out[$swarm]+1;
else $out[$swarm] = 1;

Så nu virker det :)

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408522
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste