L'Autre Net Bureau · Webmail · Aide · Wiki · Interventions · Irc · Mon
 

:!: Attention :!:

Certaines des optimisations présentées ici peuvent-être jugées strictes et relativement inefficaces car rendant le code moins clair ou moins joli à regarder.

Il peut effectivement être plus simple d'utiliser par exemple des doubles quotes, mais il est bon de savoir ce qui se passe “en dessous”.

Différence entre les simple-quotes (') et doubles quotes (")

On voit souvent dans du code:

echo "ceci est un texte très long mais sans aucune variable à l'intérieur";

Qui a pour but d'afficher la chaîne de caractères ceci est un texte très long mais sans aucune variable à l'intérieur

Or dans ce cas, il est plus économique pour l'interpréteur d'utiliser des simples quotes ('):

echo "ceci est un texte très long mais sans aucune variable à l'intérieur";

Pourquoi?

Lorsqu'il rencontre une chaîne de caractère en double quotes, php effectue la substitution des variables. C'est à dire que si l'on rencontre le code suivant:

$color = "rouge";
echo "j'aime la couleur $color";

php va afficher j'aime la couleur rouge.

Quand cette substituion n'est pas utile (pas de variable par exemple), on peut économiser du traitement à l'interpréteur en utilisant directement les simples quotes.

Concaténation

On voit souvent ce genre de choses en php:

echo "Bonjour " . $prenom . "etc ...";

Il faut savoir que l'opération de concaténation (opérateur .) a pour effet de créer une nouvelle chaîne qui contient la première et la seconde. On aura donc une chaîne “bonjour”, une chaîne “etc …” et une variable, qui provoqueront la construction d'une nouvelle chaîne “Bonjour + valeur de la variable prenom” puis une autre qui contiendra en plus, “etc …”.

S'il s'agit juste d'afficher une chaîne, on peut directement chaîner les appels à echo avec l'opérateur , et ainsi éviter ce traitement.

echo "Bonjour ", $prenom , "etc ...";

Ou mieux

echo 'Bonjour ', $prenom, 'ect ...';

Certains argueront que

echo "Bonjour $prenom etc ...";

peut sembler plus simple, au diable les performances!

 
optimisation/php.txt · Dernière modification: 2013/05/31 16:58 par fser
[unknown button type]
 
Sauf mention contraire, le contenu de ce wiki est placé sous les termes de la licence suivante : CC Attribution-Noncommercial-Share Alike 4.0 International
Recent changes RSS feed Valid XHTML 1.0 Valid CSS Driven by DokuWiki