PHP INITIÉ - Simples quotes et doubles quotes

PHP INITIÉ - Simples quotes et doubles quotes

J'ai adoré l'article de Dave Dash sur son blog. Il parle des simples et double quotes. Il explique dans un premier temps la différence entre les simples et double cote. Les doubles évaluent les variables alors que les simples ne le font pas. Il explique aussi qu'il a été endoctriné depuis des années pour optimiser ses scripts en parsant au mieux son code avec des simples quotes. Avec le temps il a voulu faire des essaies avant de revenir sur ces vieux scripts et les modifier.

PHP INITIÉ - Simples quotes et doubles quotes


.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
.11
.12
.13
.14
.15
.16
.17
.18
.19
.20
.21
.22
.23
.24
.25
.26
.27
.28
.29
.30
.31
.32
.33
.34
.35
.36
.37
.38
.39
.40
.41
.42
.43
.44
 
<?php 
 
define
('MAX',2000000); 
 
function
f1() 

    for(
$i=0;$i<MAX; $i++) 
    { 
       
$c = "test " . $i
    } 

 
 
function
f2() 

    for(
$i=0;$i<MAX; $i++) 
    { 
       
$c = "test $i"
    } 

 
 
function
f3() 

    for(
$i=0;$i<MAX; $i++) 
    { 
       
$c = 'test ' . $i
    } 

 
 
 
$t1 = microtime(true); 
f1(); 
echo
'Time 1: ' , (microtime(true) - $t1) , "n"
 
$t2 = microtime(true); 
f2(); 
echo
'Time 2: ' , (microtime(true) - $t2) , "n"
 
$t3 = microtime(true); 
f3(); 
echo
'Time 3: ' , (microtime(true) - $t3) , "n"


Les résultats sont:

Time 1: 2.898087978363
Time 2: 3.5480048656464
Time 3: 2.8503499031067

Des résultats sont plus qu'intéressant. Il a utilisé la version php 5.2.0 qui visiblement est beaucoup plus performante que les anciennes versions car on ne voit quasiment aucune différence d'exécution entre l'exemple 1 et l'exemple 3 . On peut en conclure qu'à moins de faire une itération (exemple 2), il n'est pas nécessaire de parser avec des simples cotes. Pour l'exemple 2, personne ne peut descendre en dessous des 0.6 secondes pour 1 million d'itérations.

Il conclu par le fait que les développeurs peuvent passer moins de temps à faire de nombreux calculs mentaux pour optimiser leur code, qu'ils fassent comme si tout était déjà optimal. Un vrai bonheur!!