Maison  >  Article  >  développement back-end  >  Résumé des compétences en optimisation de code PHP

Résumé des compétences en optimisation de code PHP

步履不停
步履不停original
2019-07-03 15:41:285272parcourir

Résumé des compétences en optimisation de code PHP

L'optimisation du code PHP est une dimension importante pour évaluer si vous êtes un ingénieur PHP qualifié Lorsque vous écrivez un programme, vous voulez toujours que votre programme consomme le moins de ressources possible. Fonctionne plus rapidement et nécessite moins de code. La syntaxe unique de PHP mélange C, Java, Perl et la syntaxe innovante de PHP, qui peut exécuter des pages Web dynamiques plus rapidement que CGI ou Perl. PHP intègre des programmes dans des documents HTML pour exécution, et son efficacité d'exécution est bien supérieure à celle de CGI qui génère entièrement des balises HTML.

Le but de l'optimisation PHP est de dépenser le moins de coûts en échange de la vitesse d'exécution la plus rapide et du code le plus simple à maintenir.

Conseils d'optimisation du code PHP

l'écho est plus rapide que l'impression.

Utilisez plusieurs paramètres d'écho au lieu de la concaténation de chaînes.

Déterminez le nombre maximum de boucles avant d'exécuter la boucle for. Ne calculez pas la valeur maximale à chaque boucle. Il est préférable d'utiliser foreach à la place.

Les variables globales doivent être désactivées() après utilisation.

Utilisez des guillemets simples au lieu de guillemets doubles pour délimiter la chaîne, ce qui est plus rapide.

Parce que PHP recherchera des variables dans une chaîne entourée de guillemets doubles, mais pas de guillemets simples. La fonction

remplace les expressions régulières pour accomplir la même fonction. Lors de l'incrémentation ou de la décrémentation de la variable $i, $i++ sera plus lent que ++$i.

Cette différence est spécifique à PHP et ne s'applique pas aux autres langages. ++$i est plus rapide car il ne nécessite que 3 instructions (opcodes), tandis que $i++ nécessite 4 instructions.

La post-incrémentation crée en fait une variable temporaire qui est ensuite incrémentée.

L'incrément du préfixe augmente directement sur la valeur d'origine.

Il est préférable d'utiliser un cas de commutation plutôt que d'utiliser plusieurs instructions if, else if.

Utilisez var_dump pour déboguer le code PHP.

Si vous recherchez une technologie de débogage PHP, je dois dire que var_dump devrait être la cible que vous recherchez. Cette commande peut répondre à tous vos besoins en termes d'affichage des informations PHP, et la plupart des cas de code de débogage le sont. lié à l'obtention de PHP lié à la valeur.

Utilisez le chemin complet lors de l'inclusion de fichiers et la résolution du chemin du système d'exploitation prendra moins de temps.

C'est une mauvaise idée de créer fréquemment des valeurs globales, mais parfois la situation réelle l'exige.

C'est une bonne idée d'utiliser des valeurs globales pour les informations de table de base de données ou de connexion à la base de données, mais n'utilisez pas fréquemment de valeurs globales dans votre code PHP.

De plus, une meilleure approche consiste à stocker vos variables globales dans un fichier config.php.

Si vous souhaitez connaître l'heure à laquelle le script commence à s'exécuter, il est préférable d'utiliser $_SERVER['REQUEST_TIME'] au lieu de time().

Ouvrez le module mod_deflate d'Apache.

Utiliser @ pour bloquer les messages d'erreur est très inefficace.

Essayez d'utiliser un grand nombre de fonctions intégrées à PHP.

L'incrémentation d'une variable locale non définie est 9 à 10 fois plus lente que l'incrémentation d'une variable locale prédéfinie.

Les méthodes des classes dérivées s'exécutent plus rapidement que les mêmes méthodes définies dans les classes de base.

Le simple fait de définir une variable locale sans l'appeler dans une fonction ralentira également la vitesse (dans la même mesure que l'incrémentation d'une variable locale par Apache qui analyse un script PHP est 2 fois plus lente que l'analyse d'une page HTML statique). .à 10 fois.

Utilisez autant de pages HTML statiques que possible et moins de scripts. Comme mentionné précédemment, 99 % du temps, la partie la plus importante de tout site Web PHP est la base de données.

Par conséquent, vous devez être très familier avec la façon d'utiliser correctement SQL, apprendre les tables relationnelles et les technologies de bases de données plus avancées.

Appeler une fonction vide avec un paramètre prend autant de temps que d'incrémenter la variable locale 7 à 8 fois.

Lorsque vous utilisez une chaîne et que vous devez vérifier si sa longueur répond à certaines exigences, vous utiliserez naturellement la fonction strlen().

Cette fonction s'exécute assez rapidement car elle n'effectue aucun calcul et renvoie simplement la longueur de chaîne connue stockée dans la structure zval (la structure de données intégrée de C utilisée pour stocker les variables PHP).

Toutes les situations ne doivent pas nécessairement utiliser le développement orienté objet. Le développement orienté objet est souvent très coûteux, et chaque appel de méthode et d'objet consomme beaucoup de mémoire.

À moins que le script puisse être mis en cache, il sera recompilé à chaque appel. L'introduction d'un mécanisme de mise en cache PHP peut généralement améliorer les performances de 25 à 100 % pour éliminer la surcharge de compilation.


Notes sur l'optimisation du code PHP

Un code court n'est pas égal à un code rapide

Beaucoup de gens écrivent des programmes Parfois, nous espérons écrire du code de la manière la plus concise possible, mais un code plus court prend parfois plus de temps à s'exécuter. Lors de l’écriture d’un programme, vous devez accorder plus d’attention à l’évolutivité du programme plutôt qu’à la vitesse. Avant d'optimiser votre code, examinez d'abord les parties liées à la base de données, car le goulot d'étranglement de la plupart des applications est la base de données plutôt que le code.

La micro-optimisation fait plus de mal que de bien

Qu'est-ce que la micro-optimisation ? Comme mentionné précédemment, remplacez la partie expression régulière du code par des fonctions de chaîne. Cela présente les inconvénients suivants :
(1) Cela prend beaucoup de temps
(2) Cela ne résoudra pas fondamentalement le problème de performances
(3) Cela risque très probablement de détruire le code précédent et de générer des erreurs inconnues
(4) L'effort est supérieur au retour
Il y a aussi un malentendu qui doit être mentionné ici Afin de rendre le programme plus optimisé, certaines personnes prennent en compte l'optimisation lors de l'analyse de la logique métier, et donc. apporter des modifications afin d’obtenir une meilleure logique métier. C’est une idée très stupide, car le but du programme est de résoudre des problèmes rencontrés dans la réalité, et on ne peut pas mettre la charrue avant les boeufs.

Pour plus d'articles techniques liés à PHP, veuillez visiter la colonne Tutoriel PHP pour apprendre !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn