Maison >développement back-end >tutoriel php >Partage de méthodes d'écriture php efficaces
Cet article vous explique principalement comment écrire du php efficace, j'espère qu'il pourra vous aider.
1. Statique statique
Les variables statiques commencent par la création de la classe et se terminent par la mort de la classe. Les variables non statiques commencent par la création de l'instance de classe et se terminent par la création de la classe. mort de l'instance de classe. Les méthodes statiques peuvent être appelées directement, tandis que les méthodes d'instance doivent être appelées via des instances, et les méthodes statiques sont beaucoup plus rapides. Les méthodes statiques appellent toujours la même mémoire et ne peuvent pas être détruites automatiquement, mais peuvent être détruites par instanciation.
2. Echo est plus efficace que print
car echo ne renvoie pas de valeur, tandis que print renvoie un entier. 注意,echo大字符串的时候,如果没有做调整就严重影响性能。使用打开apached的mod_deflate进行压缩或者打开ob_start先将内容放进缓冲区。
3. Définissez le nombre maximum de boucles avant la boucle, pas pendant la boucle
Par exemple, il est calculé à chaque fois dans la boucle for.
4. Détruisez les variables pour libérer de la mémoire, en particulier les grands tableaux
Les tableaux et les objets sont spéciaux dans la mémoire PHP ; l'utilisation est due au moteur zend sous-jacent de PHP. De manière générale, l'utilisation de la mémoire des tableaux PHP n'est que de 1/10, c'est-à-dire qu'un tableau avec 100 Mo de mémoire en langage C nécessite 1 Go en PHP. Surtout dans les systèmes où PHP est utilisé comme serveur backend, le problème d'une consommation excessive de mémoire se produit souvent.
5. requiere_once() consomme plus de ressources
C'est parce que requiere_once nécessite ; Déterminez si le fichier a été référencé, alors essayez de ne pas l'utiliser si possible. Méthodes require/include couramment utilisées à éviter.
6. Utilisez des chemins absolus dans les inclusions et les exigences.
Si un chemin relatif est inclus, PHP parcourra le include_path pour trouver le fichier. L'utilisation de chemins absolus évitera de tels problèmes, il faudra donc moins de temps pour résoudre le chemin du système d'exploitation.
7. peut utiliser les fonctions internes de manipulation de chaînes de PHP dans ce cas. Dans ce cas, essayez de les utiliser à la place des expressions régulières ; car son efficacité est supérieure aux expressions régulières
le remplacement des caractères str_replace est plus rapide que le remplacement régulier preg_replace, mais strtr est 1/4 plus rapide que str_replace ;
Ne faites pas non plus de substitutions inutiles Même s'il n'y a pas de substitution, str_replace allouera de la mémoire pour ses paramètres. Très lent ! Solution : utilisez strpos pour rechercher d'abord (très rapidement) si un remplacement est nécessaire, puis remplacez-le si nécessaire. Rendement : - Si un remplacement est nécessaire : Le rendement est presque égal, la différence est d'environ 0,1 %. Si aucune substitution n’est requise : l’utilisation de strpos est 200 % plus rapide.
8. Il est préférable de ne pas utiliser @, utiliser @ pour dissimuler les erreurs réduira la vitesse d'exécution du script;
L'utilisation de @ effectue en fait de nombreuses opérations en arrière-plan. La différence d'efficacité entre l'utilisation de @ et la non-utilisation de @ est : 3 fois. N'utilisez surtout pas @ dans une boucle. Dans le test de 5 boucles, même si vous utilisez error_reporting(0) pour désactiver d'abord l'erreur, puis l'activer une fois la boucle terminée, c'est plus rapide que d'utiliser @.
9.$row['id'] est 7 fois plus rapide que $row[id] ; Il est recommandé de prendre l'habitude d'ajouter des guillemets aux clés du tableau ;
10.Ne pas utiliser fonctions en boucles
Par exemple, For($x=0; $x < count($array); $x), la fonction count() calcule d'abord à l'extérieur ;
11. La création d'une variable locale non déclarée est 9 à 10 fois plus lente qu'une variable locale déjà définie.
12. Des guillemets simples au lieu de guillemets doubles pour contenir des chaînes
Apache. analyse un PHP Le script est 2 à 10 fois plus lent que l'analyse d'une page HTML statique.
Utilisez plus de pages HTML statiques et moins de scripts.
14. Ne vous contentez pas de copier des variables
Parfois afin de rendre le code PHP plus soigné. , certains débutants PHP (dont moi) copieront les variables prédéfinies dans une variable avec un nom plus court. En fait, cela doublera la consommation de mémoire, ce qui ne fera que ralentir le programme.
15. Utilisez l'instruction de branche sélectionnée
Changer de casse est préférable à l'utilisation de plusieurs instructions if, else if, et le code est plus facile à lire et à maintenir.
16. Effectuez le moins d'opérations sur les fichiers possible, bien que l'efficacité des opérations sur les fichiers de PHP ne soit pas faible ;
Vous pouvez utiliser file_get_contents au lieu de file, fopen, feof, fgets
17 Utilisez autant les composants internes de PHP. dans la mesure du possible Fonction
18. foreach est plus efficace, essayez d'utiliser foreach au lieu de while et for loop ; >19.
Ne déclarez pas de variables à l'intérieur de la boucle, en particulier les grandes variables : les objets20
Les variables globales doivent être unset() après. use;21. Utiliser ++$i pour incrémenter
$i++ sera plus lent que ++$i. Cette différence est spécifique à PHP et ne s'applique pas aux autres langages. 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 s'agit d'une forme d'optimisation, comme le fait l'optimiseur PHP de Zend.
Recommandations associées :
6 frameworks PHP efficaces pour la création d'applications Web
Apprenez l'essence de PHP, écrivez du code PHP efficace pour les performances_PHP tutoriel
Apprenez l'essence de PHP, écrivez du code PHP efficace pour les tests automatiques_PHP tutoriel
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!