Maison  >  Article  >  développement back-end  >  Dix pièges à éviter dans le développement PHP7

Dix pièges à éviter dans le développement PHP7

Guanhui
Guanhuiavant
2020-04-30 10:45:082540parcourir

De nombreuses nouvelles fonctionnalités et fonctions ont été introduites dans php7, et il existe également des fonctionnalités et fonctions abandonnées. Cela a donné lieu à certains codes qui étaient applicables à php7 auparavant mais qui ne sont pas très bons dans php7, donc cet article vous explique comment le faire. évitez php7 dans la fosse.

1. N'utilisez pas la fonction mysql_

Le jour est enfin venu, et à partir de maintenant, vous ne « devriez plus » utiliser la fonction mysql_. PHP 7 les a tous supprimés du noyau, ce qui signifie que vous devez migrer vers la bien meilleure fonction mysqli_ ou vers l'implémentation PDO plus flexible.

2. N'écrivez pas de code inutile

Celui-ci est peut-être facile à comprendre, mais il deviendra de plus en plus important car l'augmentation de la vitesse de PHP 7 peut cacher votre Quelques questions. Ne vous contentez pas de la vitesse de votre site, car la migration vers PHP 7 l'a rendu plus rapide.

En tant que développeur, vous devez toujours vous assurer de charger les scripts à la demande, de les connecter lorsque cela est possible, d'écrire des requêtes de base de données efficaces, d'utiliser la mise en cache lorsque cela est possible, et bien plus encore.

3. N'utilisez pas de balises de fermeture PHP à la fin du fichier

Vous pouvez jeter un oeil, lorsqu'un fichier se termine par du code PHP, à la plupart des WordPress les codes principaux se terminent par La balise PHP a été supprimée. En fait, le Zend Framework le désactive spécifiquement. PHP ne nécessite pas de balise de fermeture à la fin du fichier, et nous pouvons garantir qu'aucun caractère d'espacement n'est ajouté à la fin en le supprimant.

640?wx_fmt=jpeg

4. Ne faites pas de passage par référence inutile

Personnellement, je n'aime pas le passage par référence. -référence. Je sais que parfois c'est utile, mais d'autres fois cela rend le code difficile à comprendre et les résultats plus difficiles à prédire.

On dit que certaines personnes pensent que cela accélère l'exécution du code, mais selon certains programmeurs PHP expérimentés, ce n'est pas vrai.

Un exemple de la raison pour laquelle les citations sont mauvaises est que PHP a intégré shuffle() et sort(). Ils modifient le tableau d'origine au lieu de renvoyer le tableau traité, ce qui est assez illogique.

5. N'exécutez pas de requêtes en boucle

Exécuter des requêtes en boucle est un gaspillage considérable. Cela exerce une pression inutile sur votre système et peut permettre d'obtenir les mêmes résultats plus rapidement en dehors de la boucle. Lorsque je rencontre une situation où j'ai besoin de quelque chose comme ça, je résous généralement le problème avec deux requêtes distinctes que j'utilise pour créer le tableau de données. Je vais ensuite parcourir le tableau sans avoir besoin d'effectuer de requête dans le processus.

Étant donné que WordPress est utilisé ici, il peut y avoir quelques exceptions. Bien que get_post_meta() obtienne beaucoup de données de la base de données, vous pouvez l'utiliser en boucle si vous parcourez les métadonnées d'un article de blog particulier. En effet, WordPress récupère toutes les métadonnées et les met en cache lorsque vous l’appelez pour la première fois. Les appels suivants utilisent ces données mises en cache sans effectuer d'appels à la base de données.

La meilleure façon de comprendre cela est de lire la documentation de la fonction et d'utiliser un outil comme Query Monitor.

6. N'utilisez pas *

Bien sûr, il s'agit plutôt d'un problème MySQL, mais nous sommes habitués à écrire du code SQL en PHP, c'est donc le même. Quoi qu'il en soit, n'utilisez pas de caractères génériques dans les requêtes SQL si vous pouvez l'éviter, surtout si la base de données comporte de nombreuses colonnes.

Vous devez spécifier explicitement quelles lignes sont requises et les obtenir uniquement. Cela permet de réduire les ressources utilisées, de protéger les données et de rendre les choses aussi claires que possible.

Avec SQL, vous devez connaître toutes les fonctions disponibles et tester leur vitesse si possible. Lors du calcul de moyennes, de sommes ou de calculs numériques similaires, utilisez les fonctions SQL au lieu des fonctions PHP. Si vous n'êtes pas sûr de la vitesse d'une requête donnée, testez-la et essayez quelques autres compilations, puis utilisez la meilleure.

7. Ne faites pas confiance aux entrées des utilisateurs

Il n'est pas sage de faire confiance aux entrées des utilisateurs. Validez, filtrez, échappez-vous, vérifiez et laissez toujours une issue. Il existe trois problèmes avec les données utilisateur : nous, les développeurs, n'envisageons pas toutes les possibilités, elles sont souvent incorrectes et elles pourraient être délibérément compromises.

Un système bien pensé protège contre ces menaces. Assurez-vous de vérifier les valeurs appropriées à l'aide de fonctions intégrées telles que filter_var() et d'échappement (ou de précompilation) lorsque vous utilisez la base de données.

WordPress a quelques fonctions pour résoudre le problème. Consultez l'article Validation, échappement et filtrage des données utilisateur pour plus de détails.

8. N'essayez pas d'être intelligent

Votre objectif devrait être d'écrire un code élégant qui exprime plus clairement vos intentions. Vous pourrez peut-être optimiser 0,01 seconde sur chaque page en raccourcissant tout à une variable d'un seul mot, en utilisant plusieurs couches de logique ternaire et d'autres moyens. Mais cela ne fera que créer de gros problèmes pour vous et votre entourage.

Nommez judicieusement les variables, documentez votre code et privilégiez la clarté à la brièveté. Il est encore préférable d'utiliser du code standard orienté objet, qui est plus ou moins le document lui-même, sans avoir besoin d'un tas de valeurs en ligne.

9. Ne réinventez pas la roue

PHP existe depuis longtemps, et les sites Web existent depuis encore plus longtemps. Il y a de fortes chances que, quoi que vous ayez besoin de construire, quelqu'un l'ait déjà construit. N'ayez pas peur de demander l'aide des autres, Github est votre ami, Composer aussi et Packagist aussi.

Des outils de journalisation aux outils de correction des couleurs, des analyseurs de performances aux frameworks de tests unitaires, de l'API Mailchimp au Twitter Bootstrap, tout est disponible en appuyant simplement sur une touche (ou en tapant une commande), utilisez-les !

10. N'ignorez pas les autres langages

Si vous êtes un programmeur PHP, lorsque vous pouvez mieux comprendre HTML, CSS, JavaScript et MySQL. Il est temps de réapprendre JavaScript. JavaScript n'est pas jQuery et vous devez apprendre correctement JavaScript pour l'utiliser plus efficacement.

Il existe également du PHP orienté objet, qui fait gagner du temps et s'améliore lorsque la taille du code est plus grande. Pour les langages comme C# et Java, ils sont également plus faciles à comprendre une fois que vous avez compris la POO.

Développez vos connaissances en découvrant les gestionnaires de packages, les scripts de build, CoffeeScript, LESS, SASS, YAML, les moteurs de script et d'autres outils puissants. Je vous recommande fortement de jeter un œil à d'autres frameworks, notamment Laravel.

Que diriez-vous d'apprendre le développement d'applications Ruby, RoR, Android, iPhone et Windows Phone pendant que vous les utilisez pour faire avancer les choses avec brio ? Vous pensez peut-être que cela ne sert à rien parce qu’ils sont en dehors de votre zone de confort et de ce que le travail exige, mais c’est ce qu’ils sont. Chaque langue a des choses pratiques à apprendre, ainsi que de nouvelles choses que vous n'avez jamais rencontrées auparavant. Ce n'est pas un hasard si tous les meilleurs développeurs PHP connaissent de nombreux autres langages de programmation.

Tutoriel recommandé : "Tutoriel PHP7"

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer