/ 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
Hvad er hurtigst ?
Fra : Søren


Dato : 25-04-08 15:05

Vi sidder to her og har netop indgået et væddemål:

Den ene påstår, at det er hurtigst for serveren af fortolke PHP,
hvis man holder alt i PHP, dvs. eksempelvis skriver følgende:

<?php

$var = 3 + 4;
$var2 = 4 + 4;

echo '<p>Tallet '$var.' er ikke lig med '.$var2.'</p>';

?>

Mens den anden påstår at man netop i PHP (i modsætning til ASP)
har fordel af af springe ud af PHP. og eksemeplvis gøre som
følger:

<?php
$var = 3 + 4;
$var2 = 4 + 4;
?>
<p>Tallet <?=$var?> er ikke lig med <?=$var2?></p>

Er der nogen, som kan hjælpe os med at afgøre væddemålet, og evt.
henvise til nogle artikler omkring det.

På forhånd tak.

/ Søren



--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Bertel Lund Hansen (25-04-2008)
Kommentar
Fra : Bertel Lund Hansen


Dato : 25-04-08 16:17

Søren skrev:

> echo '<p>Tallet '$var.' er ikke lig med '.$var2.'</p>';

> <p>Tallet <?=$var?> er ikke lig med <?=$var2?></p>

Der er en tredje form I også kan diskutere:

   echo "<p>Tallet $var er ikke lig med $var2 </p>";

Jeg bruger mulighederne 2 og 3. 2 bruger jeg hvis jeg er midt i
en større blok HTML og lige skal have fat i en variabels værdi.

Mulighed 1 bruger jeg kun når jeg er tvunget til det, som f.eks.
ved funktioner og beregninger.

Jeg spekulerer ikke på hvad der er hurtigst, men på hvad der er
mest overskueligt. Det er nemlig det der i længden sparer mest
tid.

--
Bertel
http://bertel.lundhansen.dk/   FIDUSO: http://fiduso.dk/

Martin (25-04-2008)
Kommentar
Fra : Martin


Dato : 25-04-08 18:17

Bertel Lund Hansen wrote:
> Søren skrev:
>
>> echo '<p>Tallet '$var.' er ikke lig med '.$var2.'</p>';
>
>> <p>Tallet <?=$var?> er ikke lig med <?=$var2?></p>
>
> Der er en tredje form I også kan diskutere:
>
>    echo "<p>Tallet $var er ikke lig med $var2 </p>";
>
> Jeg bruger mulighederne 2 og 3. 2 bruger jeg hvis jeg er midt i
> en større blok HTML og lige skal have fat i en variabels værdi.
>
> Mulighed 1 bruger jeg kun når jeg er tvunget til det, som f.eks.
> ved funktioner og beregninger.
>
> Jeg spekulerer ikke på hvad der er hurtigst, men på hvad der er
> mest overskueligt. Det er nemlig det der i længden sparer mest
> tid.

Tjaa det hurtigste er nu altså at bruge en dedikeret template engine
eller MVC struktur, så PHP og HTML bliver skilt 100% fra hinanden -
aldrig mere rode med PHP i HTML, eller omvendt for den sags skyld.
Frontend programmører til HTML/CSS osv. og backend til PHP.

Martin (25-04-2008)
Kommentar
Fra : Martin


Dato : 25-04-08 18:22

Søren wrote:
> Vi sidder to her og har netop indgået et væddemål:
>
> Den ene påstår, at det er hurtigst for serveren af fortolke PHP,
> hvis man holder alt i PHP, dvs. eksempelvis skriver følgende:
>
> <?php
>
> $var = 3 + 4;
> $var2 = 4 + 4;
>
> echo '<p>Tallet '$var.' er ikke lig med '.$var2.'</p>';
>
> ?>
>
> Mens den anden påstår at man netop i PHP (i modsætning til ASP)
> har fordel af af springe ud af PHP. og eksemeplvis gøre som
> følger:
>
> <?php
> $var = 3 + 4;
> $var2 = 4 + 4;
> ?>
> <p>Tallet <?=$var?> er ikke lig med <?=$var2?></p>

Jeg vil gætte på at #1 er hurtigst, da PHP enginen ikke skal startes op
og lukkes hele tiden, men ellers tag tid på det?

> Er der nogen, som kan hjælpe os med at afgøre væddemålet, og evt.
> henvise til nogle artikler omkring det.

$start = microtime();
// Do stuff
?> skriv noget HTML <?php echo $foo; ?> blabla
<?php
echo microtime()-$start;
?>

>
> På forhånd tak.
>
> / Søren
>
>
>

Martin (25-04-2008)
Kommentar
Fra : Martin


Dato : 25-04-08 18:25

Martin wrote:
> Søren wrote:
>> Vi sidder to her og har netop indgået et væddemål:
>>
>> Den ene påstår, at det er hurtigst for serveren af fortolke PHP,
>> hvis man holder alt i PHP, dvs. eksempelvis skriver følgende:
>>
>> <?php
>>
>> $var = 3 + 4;
>> $var2 = 4 + 4;
>>
>> echo '<p>Tallet '$var.' er ikke lig med '.$var2.'</p>';
>>
>> ?>
>>
>> Mens den anden påstår at man netop i PHP (i modsætning til ASP)
>> har fordel af af springe ud af PHP. og eksemeplvis gøre som
>> følger:
>>
>> <?php
>> $var = 3 + 4;
>> $var2 = 4 + 4;
>> ?>
>> <p>Tallet <?=$var?> er ikke lig med <?=$var2?></p>
>
> Jeg vil gætte på at #1 er hurtigst, da PHP enginen ikke skal startes op
> og lukkes hele tiden, men ellers tag tid på det?
>
>> Er der nogen, som kan hjælpe os med at afgøre væddemålet, og evt.
>> henvise til nogle artikler omkring det.
>
> $start = microtime();
> // Do stuff
> ?> skriv noget HTML <?php echo $foo; ?> blabla
> <?php
> echo microtime()-$start;
> ?>

Skal selvfølgelig være
$start = microtime(true);
// Do stuff
?> skriv noget HTML <?php echo $foo; ?> blabla
<?php
echo microtime(true)-$start;
?>

(true) i microtime returner float (PHP 5 only)

Anyway - så skal der nok en del mere kode til før i får noget ordentligt
resultat :)

>
>>
>> På forhånd tak.
>>
>> / Søren
>>
>>
>>

Peter Brodersen (25-04-2008)
Kommentar
Fra : Peter Brodersen


Dato : 25-04-08 21:34

On Fri, 25 Apr 2008 19:21:44 +0200, Martin <maaNO@SPAMscandesigns.dk>
wrote:

>Jeg vil gætte på at #1 er hurtigst, da PHP enginen ikke skal startes op
>og lukkes hele tiden, men ellers tag tid på det?

Hvis det virkelig skal være, så er det hurtigt at lukke og åbne igen ifgl.
Rasmus Lerdorf.

Men...

Det er "premature optimization", og destruktivt på længere sigt at
optimere i den retning, idet det kan gøre koden mindre overskuelig.

Det er heller ikke hensigtsmæssigt at tage tid, idet man let kan komme til
en konklusion, at den ene metode fx er 10 gange så tung som den anden. Men
i praksis taler vi stadigvæk marginaler. Én eneste filadgang i ét request
vil sandsynligvis belaste systemet langt, langt mere, end man nogensinde
får "sparet op".

Så det mest hensigtsmæssige svar er: Tænk ikke på den del

--
- Peter Brodersen
Kendt fra Internet

Søren Golf (27-04-2008)
Kommentar
Fra : Søren Golf


Dato : 27-04-08 09:40

Hej Peter,

Du har tilfældigvis ikke et link til et sted, hvor Rasmus Lerdorf skriver
dette ?

/ Søren

Peter Brodersen wrote in dk.edb.internet.webdesign.serverside.php:
> On Fri, 25 Apr 2008 19:21:44 +0200, Martin <maaNO@SPAMscandesigns.dk>
> wrote:
>
> >Jeg vil gætte på at #1 er hurtigst, da PHP enginen ikke skal startes op
> >og lukkes hele tiden, men ellers tag tid på det?
>
> Hvis det virkelig skal være, så er det hurtigt at lukke og åbne igen ifgl.
> Rasmus Lerdorf.
>
> Men...
>
> Det er "premature optimization", og destruktivt på længere sigt at
> optimere i den retning, idet det kan gøre koden mindre overskuelig.
>
> Det er heller ikke hensigtsmæssigt at tage tid, idet man let kan komme til
> en konklusion, at den ene metode fx er 10 gange så tung som den anden. Men
> i praksis taler vi stadigvæk marginaler. Én eneste filadgang i ét request
> vil sandsynligvis belaste systemet langt, langt mere, end man nogensinde
> får "sparet op".
>
> Så det mest hensigtsmæssige svar er: Tænk ikke på den del
>
> --
> - Peter Brodersen
> Kendt fra Internet


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Peter Brodersen (27-04-2008)
Kommentar
Fra : Peter Brodersen


Dato : 27-04-08 15:00

On 27 Apr 2008 08:39:38 GMT, Søren Golf <quctraffic@hotmail.com> wrote:

>Du har tilfældigvis ikke et link til et sted, hvor Rasmus Lerdorf skriver
>dette ?

Ikke lige. Han nævnte det på en konference i vistnok 2000 i forskerparken
Symbion.

Men han nævnte ved samme anledning, at det ikke er det, man skal bruge tid
på.

--
- Peter Brodersen
Kendt fra Internet

Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409083
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste