php est un langage de script très populaire. Aujourd'hui, de nombreuses entreprises (Sina, Youku, Baidu, Sohu, Taobao, etc.) utilisent ce langage pour le développement de sites Web. N'oubliez pas que les performances de vos scripts PHP dépendent souvent de votre version de PHP, de l'environnement de votre serveur Web et de la complexité de votre code.
Optimisez les goulots d'étranglement dans votre code
Hoare a dit un jour « L'optimisation prématurée est la racine de tous les malheurs. » Lorsque vous souhaitez accélérer le fonctionnement de votre site Web, vous devez procéder à une optimisation. Que devez-vous faire avant de modifier votre code ? Qu'est-ce qui ralentit le système ? Vous pouvez optimiser votre php grâce aux conseils suivants et à d'autres méthodes, cela peut être pour des raisons de base de données ou de réseau. En optimisant votre code php, vous pouvez essayer de trouver les goulots d'étranglement de votre système !
Mettez à niveau votre version PHP
Les membres de votre équipe ont suggéré que le moteur PHP a connu de nombreuses améliorations symboliques des performances au fil des ans. Si votre serveur Web exécute toujours une ancienne version, telle que php3 ou php4. Ainsi, avant d’essayer d’optimiser votre code, vous devez approfondir les mises à niveau entre les versions.
Cliquez sur le lien suivant pour connaître les détails spécifiques :
Port de PHP 4 vers PHP 5
Port de PHP 5.0.x vers PHP 5.1.x
Migrer de PHP 5.1.x vers PHP 5.2.x
Utiliser la mise en cache
Utiliser des modules de mise en cache (tels que Memcache) ou des systèmes de modèles (comme Smarty) pour la mise en cache. Nous pouvons améliorer les performances du site Web en mettant en cache les résultats de la base de données et en extrayant les résultats des pages.
Utiliser le tampon de sortie
Lorsque votre script essaie d'effectuer un rendu, PHP utilisera le tampon mémoire pour enregistrer toutes les données. La mise en cache peut rendre votre page lente car le tampon est rempli de toutes les données auxquelles il faut répondre avant que le résultat ne soit renvoyé à l'utilisateur.
Heureusement, vous pouvez apporter une modification qui oblige PHP à répondre à l'utilisateur avant que le tampon ne se remplisse, ce qui rendra votre site Web plus rapide.
Évitez d'écrire des setters et getters naïfs
Lorsque vous écrivez des classes PHP, vous pouvez directement manipuler les propriétés des objets, ce qui vous aidera à gagner du temps et améliorez les performances de votre script. Plutôt que le genre de passeurs et de getters qui rendent les gens puérils et ridicules.
Voici quelques cas : la classe dog exploite l'attribut name en utilisant setName() et getName().
class dog { public $name = ''; public function setName($name) { $this->name = $name; } public function getName() { return $this->name; } }
Remarque : setName() et getName() ne font rien d'autre que stocker et renvoyer l'attribut name.
$rover = new dog(); $rover->setName('rover'); echo $rover->getName();
Définissez et accédez directement à l'attribut name, les performances peuvent être améliorées de 100 % et le temps de développement peut également être réduit !
$rover = new dog(); $rover->name = 'rover'; echo $rover->name;
Il n'y a aucune raison de copier des variables
Parfois, les PHPers juniors, afin de rendre le code plus "propre", réaffectent souvent déjà variables définies à une autre variable. Cela entraîne effectivement une double consommation de mémoire (lors du changement de variables), ce qui entraîne une diminution des performances du script.
Par exemple, si un utilisateur insère une variable de 512 Ko dans une autre variable, 1 Mo de mémoire sera consommé.
$description = strip_tags($_POST['description']); echo $description;
Le code ci-dessus copie les variables sans raison. Il vous suffit de générer des variables en ligne sans consommer de mémoire supplémentaire.
echo strip_tags($_POST['description']);
Évitez de faire une boucle pour effectuer des opérations SQL
Une erreur courante consiste à placer une opération SQL dans une boucle, ce qui entraîne des accès fréquents au plus important encore, la base de données entraîne directement de mauvaises performances du script. Dans l'exemple suivant, vous pouvez réinitialiser une opération de boucle sur une seule instruction SQL.
foreach ($userList as $user) { $query = 'INSERT INTO users (first_name,last_name) VALUES("' . $user['first_name'] . '", "' . $user['last_name'] . '")'; mysql_query($query); }
Procédure :
INSERT INTO users (first_name,last_name) VALUES("John", "Doe")
Au lieu de ce schéma de boucle, vous pouvez regrouper les données en une seule opération de base de données.
$userData = array(); foreach ($userList as $user) { $userData[] = '("' . $user['first_name'] . '", "' . $user['last_name'] . '")'; } $query = 'INSERT INTO users (first_name,last_name) VALUES' . implode(',', $userData); mysql_query($query);
Processus :
INSERT INTO users (first_name,last_name) VALUES("John", "Doe"),("Jane", "Doe")...
Cet article est reproduit à partir de : https://www.cnblogs.com/baochuan/p/3523677.html
Articles et tutoriels connexes recommandés : tutoriel php
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!