Avatar billede voirsous Nybegynder
19. december 2003 - 12:47 Der er 8 kommentarer og
1 løsning

hvor mange gange XX findes

Hej,
jeg har en masse linier nok omkring 20.000 til 40.000 stk. Jeg vil lave et script der kører alle linierne igennem og finder ud af hvor mange der helt nøjagtig er. Havde forestilet mig det på den her måde:
hent linierne, lav nl2br(linier); og så en fuktion der løber nl2br(linier); igennem for at finde ud af hvor mange gang den støder på <br />.
Det er er en meget krævende process, kunne jeg forestille mig. Så jeg har tænkt mig at kun at kører fuktionen når det er aktuelt en agng om ugen etc.

Men tilbage til koden, hvordan kunne den fuktion til at finde antl <br /> i se ud?
Avatar billede erikjacobsen Ekspert
19. december 2003 - 13:26 #1
Skal du tælle antal linier i en fil, er det vist hurtigst med:

$handle = fopen ("dinfil", "r");
$linier=0;
while (!feof ($handle)) {
  $buffer = fgets($handle, 4096);
  $linier++;
}
fclose ($handle);
print "Der er $linier linier";
Avatar billede sukos Juniormester
20. december 2003 - 07:15 #2
Man kan vel også bruge file:

<?php
$fil = file("fil.txt");
echo count($fil);
?>
Avatar billede erikjacobsen Ekspert
20. december 2003 - 11:12 #3
Ja, men hvis der er 40000 linier allokeres der meget RAM. "file" er god
til små filer, men jeg gætter på min generelt er hurtigere ved store.
Dog - jeg har ikke prøvet ;))
Avatar billede voirsous Nybegynder
20. december 2003 - 12:00 #4
det er nu ikke en fil, men en masse database records :)
Avatar billede ztyxx Nybegynder
20. december 2003 - 12:02 #5
$res = mysql_query("select count(*) as tael from tabel");
    while($ting = mysql_fetch_array($res)) {
        echo $ting[tael];
    }
Avatar billede martinbk Nybegynder
20. december 2003 - 19:46 #6
en while løkke er ret overflødig da tael jo altid kun vil antage en værdi
$tal = mysql_result(mysql_query("select count(*) as tael from tabel"),0);
echo $tal;
Avatar billede voirsous Nybegynder
26. december 2003 - 00:03 #7
mange tak, vil i smide et svar så gerne? :)
Avatar billede ztyxx Nybegynder
26. december 2003 - 00:05 #8
c",)
Avatar billede ztyxx Nybegynder
06. januar 2004 - 21:23 #9
takker for point :-)
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