Versio

echo echo!

Overzicht Reageren

Pagina: 1 2 volgende »

Ozzie PHP

Ozzie PHP

29/11/2010 22:25:12
Quote Anchor link
Tja, toch eens een leuke dan...

$naam = 'Jan';
$beest = 'Woodywoodpecker';

De meesten van jullie zullen als volgt echo'en:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo 'Ik ben '.$naam.' en ik doe '.$beest.' na.';
?>


Nu ben ik heel benieuwd of iemand het ook wel eens zo doet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo 'Ik ben ',$naam,' en ik doe ',$beest,' na.';
?>

Heb je het verschil gezien? Komma's in plaats van punten! Wie doet het op die laatste manier?
 
PHP hulp

PHP hulp

24/05/2012 11:00:11
Gesponsorde koppelingen:
BHosted Hosting al vanaf € 1,- per maand

Controleer nu gratis jouw domeinnaam:

  
 
Karl Karl

Karl Karl

29/11/2010 22:37:24
Quote Anchor link
Echo aanroepen met meerdere parameters? Ikke niet.
 
Ozzie PHP

Ozzie PHP

29/11/2010 22:45:17
Quote Anchor link
Ik las een keer dat dit beter is? Echo kan meerdere argumenten kommagescheiden weergeven. Ik heb dit ook nooit gedaan maar het voordeel zou zijn dat ie er nu geen string van maakt. De punt plakt alles aan elkaar en maakt er 1 string van. Echter, je echoot iets, en daarna heb je de string niet meer nodig, dus waarom zou je die aan elkaar plakken? In principe doe je iets wat niet nodig is.
 
TJVB tvb

TJVB tvb

30/11/2010 09:46:10
Quote Anchor link
We hebben er hier een keer naar gekeken en kwamen tot de conclusie dat het snelheidsverschil heel klein was terwijl het niet natuurlijk overkwam waardoor we besloten hebben om het niet te doen. Daarnaast gebruiken we bijna geen echo alleen aan het einde van het script komt dat een keer voor.
 
Ozzie PHP

Ozzie PHP

30/11/2010 10:36:34
Quote Anchor link
Was het snelheidsverschil in het voordeel van het gebruik met komma's?

Het voelt inderdaad niet natuurlijk, maar dat komt denk ik omdat je (ik) het niet gewend bent. Maar als je erover nadenkt is het wel vreemd om een string aan elkaar te plakken en die dan te echo'en.

Andere meningen? Zijn er mensen die wel met komma's echo'en?
 
Chris
Beheerder

Chris

30/11/2010 11:39:30
Quote Anchor link
Er zit niet heel veel verschil in, maar je kan toch echt verschil zien..

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
echo '<pre>';
echo 'Quotes..'.PHP_EOL;
$start = microtime(true);
for($i = 0; $i <= 100; $i++)
{

    echo "Regel $i, ";
}

$end = microtime(true);
$difference = $end - $start;
echo PHP_EOL.$difference.PHP_EOL;

echo 'Punten..'.PHP_EOL;
$start = microtime(true);
for($i = 0; $i <= 100; $i++)
{

    echo 'Regel'.$i.',';
}

$end = microtime(true);
$difference = $end - $start;
echo PHP_EOL.$difference.PHP_EOL;

echo 'Komma..'.PHP_EOL;
$start = microtime(true);
for($i = 0; $i <= 100; $i++)
{

    echo 'Regel',$i,',';
}

$end = microtime(true);
$difference = $end - $start;
echo PHP_EOL.$difference.PHP_EOL;
?>


Resultaten bij mij:
Quotes: (Variabele binnen quotes) echo "Regel $i";
0.00017690658569336

Punten: echo 'Regel '.$i;
0.00015521049499512

Komma: echo 'Regel ',$i;
0.00013184547424316
Gewijzigd op 30/11/2010 11:39:50 door Chris
 
Ozzie PHP

Ozzie PHP

30/11/2010 12:06:32
Quote Anchor link
Mooi gemaakt!

Tja, en nu? Die komma blijkt toch echt sneller te gaan. Allemaal met komma's gaan echo'en dan vanaf nu????
 
Jelmer rrrr

Jelmer rrrr

30/11/2010 12:13:45
Quote Anchor link
Ik krijg wisselende resultaten. De ene keer zijn de komma's sneller, de andere keer de punten. Ik denk dat PHP intern al heel erg geoptimaliseerd is hiervoor.

Ow, probeer het eens met ob_start() bovenaan voor de grap. Bij mij werd echo plots nog eens 10x sneller >:)
 
Ozzie PHP

Ozzie PHP

30/11/2010 13:03:00
Quote Anchor link
Maar wat moeten we nu? Is er iemand die het WEL met komma's doet? Of doet niemand dat?
 
Niek s

niek s

30/11/2010 13:30:02
Quote Anchor link
Waarom zou je uberhaupt echo gebruiken? :P
 
Ozzie PHP

Ozzie PHP

30/11/2010 13:35:22
Quote Anchor link
hoe bedoel je?
 
Pim -

Pim -

30/11/2010 13:38:00
Quote Anchor link
Niek s op 30/11/2010 13:30:02:
Waarom zou je uberhaupt echo gebruiken? :P


Als php://stdout ook kan ;)
 
Ozzie PHP

Ozzie PHP

30/11/2010 13:41:28
Quote Anchor link
wat is dat nu weer dan????

iedereen gebruikt toch ECHO om de inhoud van een variabele op beeld te tonen??!
 
Wouter J

Wouter J

30/11/2010 14:09:41
Quote Anchor link
Heb nog even een uitgebreide test gedaan op die van Chris.
En dit zijn de resultaten:
Punten het snelst: 395
Komma's het snelst: 606

De komma's zijn dus over het algemeen sneller dat de punten.
Gewijzigd op 30/11/2010 14:55:54 door Wouter J
 
Ozzie PHP

Ozzie PHP

30/11/2010 14:21:37
Quote Anchor link
395 is sneller toch dan 606???
 
Chris
Beheerder

Chris

30/11/2010 14:25:54
Quote Anchor link
Net ook nog wat tests gedaan, m'n script iets aangepast zodat ik de resultaten sneller kan plaatsen. Het is afhankelijk van het aantal echo's dat je maakt...

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
13163:
Quotes..: 0.0071589946746826
Punten..: 0.0075080394744873
Komma...: 0.0060749053955078
Totaal..: 0.020784854888916

85908:
Quotes..: 0.052965879440308
Punten..: 0.061398983001709
Komma...: 0.050459861755371
Totaal..: 0.1648690700531

73996:
Quotes..: 0.041393995285034
Punten..: 0.045967102050781
Komma...: 0.040701150894165
Totaal..: 0.12810397148132

30605:
Quotes..: 0.017194986343384
Punten..: 0.018378019332886
Komma...: 0.016165018081665
Totaal..: 0.051793098449707

LOL! 996981:

Quotes..: 1.0118591785431
Punten..: 0.59965705871582
Komma...: 0.51841187477112
Totaal..: 2.2139141559601


conclusie, bij bijna een miljoen regels, zit er pas een halve seconde tussen. (maar niet eens merkbaar aangezien je browser eerst die regels moet verwerken, en dan pas kan gaan renderen..)
Gewijzigd op 30/11/2010 14:33:15 door Chris
 
Wouter J

Wouter J

30/11/2010 14:42:15
Quote Anchor link
Ozzie PHP op 30/11/2010 14:21:37:
395 is sneller toch dan 606???

Die getallen zijn het aantal keer dat de komma sneller was dan de punt en omgekeerd.
 
Ozzie PHP

Ozzie PHP

30/11/2010 14:48:30
Quote Anchor link
Hmmm oke, uit Chris z'n test blijkt dat komma's telkens net iets sneller is, zij het minimaal.

Maar wat is nu de juiste manier dan? Kom ik weer terug op mijn eerdere opmerking: "Echter, je echoot iets, en daarna heb je de string niet meer nodig, dus waarom zou je die aan elkaar plakken? In principe doe je iets wat niet nodig is.".
 
Chris
Beheerder

Chris

30/11/2010 14:52:06
Quote Anchor link
Wouter J op 30/11/2010 14:42:15:
Ozzie PHP op 30/11/2010 14:21:37:
395 is sneller toch dan 606???

Die getallen zijn het aantal keer dat de komma sneller was dan de punt en omgekeerd.


Hoe kom jij dan aan die resultaten? Mijn resultaten zijn namelijk net even iets anders.. (plaats anders een script oid?)
 
Wouter J

Wouter J

30/11/2010 14:54:43
Quote Anchor link
@Chris,
Zie nu dat ik de cijfers precies verkeerd plaatste. Komma's zijn dus inderdaad sneller dan punten.
En script plaats ik maar niet, is echt een rommeltje.

Resultaten bij herhaling van de proef:

Komma's 586 Punten: 632
Komma's 832 Punten: 749
Komma's 938 Punten: 819
Komma's 983 Punten: 873
Komma's 997 Punten: 907
Komma's 1001 Punten: 935
Komma's 1001 Punten: 953
Komma's 1001 Punten: 971
Komma's 1001 Punten: 983
Komma's 1001 Punten: 987
Gewijzigd op 30/11/2010 15:12:28 door Wouter J
 
Ozzie PHP

Ozzie PHP

30/11/2010 15:08:31
Quote Anchor link
Oke, komma's zijn sneller.... maar we gebruiken ze niet??????
Hmmmm... :s
 

Pagina: 1 2 volgende »



Overzicht Reageren