Avatar billede durd Nybegynder
09. juni 2002 - 19:17 Der er 11 kommentarer og
2 løsninger

Genereringstid...

Jeg har set at der på nogen sider står, hvor lang tid siden har været om at blive genereret. Altså ligesom her på eksperten (ude til højre). Der står også genereringstid.. :D Jeg kunne meget godt tænke mig at vide hvordan man laver det..
Avatar billede brevkasserne Nybegynder
09. juni 2002 - 19:23 #1
Du sætter bare en variabel i toppen af din side til tiden p.t. og en variabel i bunden som også sættes til tiden p.t.
Derefter trækker du dem bare fra hinanden og så har du genereringstiden...
Avatar billede mjl Nybegynder
09. juni 2002 - 19:26 #2
Avatar billede elkrog Nybegynder
09. juni 2002 - 19:30 #3
<?php
$end = microtime();
$time = $end - $start;
$time = substr($time,0,6);
?>
genereringstid: <b><?=$time?></b> sekunder
Avatar billede mjl Nybegynder
09. juni 2002 - 19:39 #4
Jow jow
Avatar billede tipsen Nybegynder
09. juni 2002 - 21:12 #5
som regel tager det ingen tid at generere siden i php - men siden skal stadig sendes igennem webserveren og nå frem til bestemmelsesstedet - jeg synes kun den slags genereringstider har sin berettigelse, hvis der er tale om scripts som har eksekveringstid højere end eks. 10 sekunder - som eksempelvis nogle søgescripts eller lignende...
Avatar billede durd Nybegynder
12. juni 2002 - 14:46 #6
Hva elkrog. Det er meget fint og det hele, men du har ikke skrevet noget om, at det er nødvendigt at sætte dele af dit script i starten, og i slutningen af det der skal loades. Hvordan skal jeg skrive scriptet? Rart med lidt vejledning jo :D
Avatar billede elkrog Nybegynder
12. juni 2002 - 16:33 #7
Du kan bare kopiere koden ind der hvor det skal bruges.
Avatar billede tipsen Nybegynder
12. juni 2002 - 22:01 #8
Du kan se et eksempel på tidtagning her:

//Find primtal - med tidtagning:

function getmicrotime() {
    list($usec, $sec) = explode(" ",microtime());
    return ((float)$usec + (float)$sec);
}

$time_start = getmicrotime();

$primtalarray = array(2);
for ($i=3;$i<60000;$i+=2) {
  $sqrti = sqrt($i);
  foreach ($primtalarray as $primtal) {
    if (!($i % $primtal)) break;
    if ($primtal > $sqrti) {
      $primtalarray[] = $i;
      break;
    }
  }
}

$time_end = getmicrotime();
$time = $time_end - $time_start;
echo "Genererede ".count($primtalarray)." primtal på $time sekunder!";

foreach ($primtalarray as $primtal) {
  echo "$primtal<br>";
}

Du skal ikke blive forvirret over koden til at generere primtal - det er bare for at illustrere, hvordan tidtagning fungerer sammen med anden kode.
Avatar billede mjl Nybegynder
22. juni 2002 - 22:38 #9
Tra la la - og falderah...er du gået i seng eller hva?????
Avatar billede durd Nybegynder
24. juni 2002 - 15:12 #10
Nej nej mjl.. Jeg har bare et problem.. Hvad gør jeg lige, hvis min genereringstid skal stå midt på siden.. Så skal den jo vise tiden inden den kan nå at få den helt regnet ud. Bare det jeg har gået og funderet lidt over :D

Kan I svare på det?
Avatar billede mjl Nybegynder
24. juni 2002 - 16:57 #11
Jamen - det der skrives (echo'es) på siden kan jo stå hvor det skal være.

Altså selv om den lige kører siden igennem, for at få slut tiden, kan den jo godt skrive tiden i midten! Håber du forstår!

Lad os sige, at den tid det tog er = $tiden, så kan du jo bare echo $tiden på midten af siden - altså $tiden vil jo være den tid det tog!!!

Forstår du?
Avatar billede mjl Nybegynder
24. juni 2002 - 16:59 #12
function getmicrotime(){
    list($usec, $sec) = explode(" ",microtime());
    return ((float)$usec + (float)$sec);
    }

$time_start = getmicrotime();


Indsæt i slutningen:

$time_slut = getmicrotime();

$exectime = $time_slut - $time_start;

$exectime kan du jo "echo" hvor det skal være...
Avatar billede durd Nybegynder
12. august 2002 - 21:51 #13
Takker for hjælpen -det var lige hva jeg havde brug for :D
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