7 Réponses :


2
votes

Si aucun traitement du texte au sein n'est requis, il est plus rapide que Single.


2 commentaires

Je ne sais pas pourquoi cela a été évité. C'est la seule réponse correcte réelle à la question posée. Toutes les autres réponses indiquent "cela n'a pas d'importance", ce qui, bien que vrai, ne répond pas à la question.


Gardez également à l'esprit que cette réponse a probablement référencé PHP 5.2 où la différence de performance était plus prononcée. Dans> 5.3, nous parlons moins d'un pour cent dans la plupart des cas de différence de temps.



39
votes

Je dirais que les citations simples sont plus rapides car elles ne nécessitent pas shift ;)

Les différentes citations ont des implications sur la sortie variable et les caractères d'échappement. Contenu à l'intérieur des guillemets simples est pris tel quel, aucun caractère d'évacuation et variables n'est interprété. Double citations interpréter les valeurs variables et échapper aux caractères spéciaux tels que les nouvelles lignes ( \ n ).


2 commentaires

+0 Pour une bonne réponse, +1 pour la touche Maj.


Nah, seulement un bon clavier anglais clair américain américain. J'aime aussi les citations de No-Shift-for-Single-for-Single




1
votes

Une citation unique est généralement plus rapide et tout cité à l'intérieur traité comme chaîne ordinaire,

comme xxx

php n'utilisera pas de traitement supplémentaire pour interpréter ce qui est à l'intérieur du Citation unique

Toutefois, comparez-la à la double citation, PHP remplacera la valeur $ quelque chose sera la valeur attribuée xxx


2 commentaires

Même les cordes de citations simples nécessitent une certaine interprétation ... une chaîne avec un 'ou un \ en elle, même dans des guillemets simples, est soumis à une interprétation pour gérer correctement ces personnages ... et il n'y a pas de différence notable de vitesse.


Cela aurait peut-être été le cas lorsque cette réponse a été donnée, mais aujourd'hui la différence entre les citations simples et doubles en termes de performance est négligeable à moins que vous ne traitez de millions de cordes dans une boucle.



20
votes

2 commentaires

"Vous devriez aussi essayer d'être cohérent" ... +1 pour cette friche.


Pour être cohérent, j'écris souvent du code comme "j'ai". $ compter. 'des choses' . "\ n" .. mais cela semble messier que "j'ai $ compter les choses \ n". Je suppose que cela n'a pas vraiment d'importance, tant que vous pouvez le lire plus tard.



17
votes

dépend de ce que vous voulez faire. Je viens de faire quelques points de repère et d'une affectation de chaîne testée avec un étui à tester 5: Double citations + variable, citations doubles, citations doubles et chaîne Ajout, citations simples et guillemets simples avec chaîne Ajoutez.

Mon code de test. Un million de boucles. Affectation de chaîne. P>

<?php

$start = microtime(true);

$str = "";

for($i = 0; $i<1000000; $i++)
{
        $str = "hello $i";
}

$end = microtime(true);

echo $end - $start;


0 commentaires

4
votes

comme pour la vitesse, la réponse droite seule est elle ne devrait pas être votre préoccupation du tout . Période. La différence, si vous en trouvez même une importance du tout. Pour être préoccupé par la vitesse, il faut comprendre une image complète, pas un pixel de celui-ci. Rendre votre application plus rapidement et plus efficace est une tâche excellente et compliquée. Mais on ne peut pas être fait en demandant des questions «ce qui est plus rapide». Si vous vraiment concernés dans cela, commencez à apprendre ce que profilage est.

Quant aux avantages, une page manuelle explique est le meilleur endroit pour l'apprendre: http://php.net/ types.string
Ce n'est pas vraiment des avantages, mais plutôt des cas.


1 commentaires

Je conviens que les optimisations prédemptives sont généralement mauvaises et que la vitesse différente entre les chaînes simples et doubles citation est assez petite. Mais même de petites différences peuvent avoir un impact étant donné le scénario de droite et je pense que vous oubliez que certaines personnes qui posent cette question peuvent être confrontées à un tel scénario.