1. Utilisez les fonctions ip2long() et long2ip() pour convertir l'adresse IP en entier et la stocker dans la base de données. Cette méthode réduit l'espace de stockage à près d'un quart (15 octets pour char(15) contre 4 octets pour entier), il est plus simple de calculer si une adresse spécifique se trouve dans une page de plage, et la recherche et le tri sont plus rapides (bien que parfois juste un peu plus vite).
2. Utilisez la fonction checkdnsrr() pour vérifier si le nom de domaine existe lors de la vérification de l'adresse e-mail. Cette fonction intégrée confirme que le nom de domaine spécifié peut être résolu en une adresse IP. La section des commentaires utilisateur de la documentation PHP pour cette fonction contient une fonction simple définie par l'utilisateur basée sur checkdnsrr() qui est utilisée pour vérifier la validité de l'adresse e-mail. Cette méthode est un excellent moyen d'attraper les gars qui pensent que leur adresse e-mail est " [email protected] " au lieu de " [email protected] ".
3. Si vous utilisez PHP 5 et MySQL 4.1 ou supérieur, envisagez d'abandonner la série de fonctions mysql_* et d'utiliser la série de fonctions mysqli_* améliorée. Une fonctionnalité intéressante est que vous pouvez utiliser des instructions préparées, ce qui peut accélérer les requêtes si vous gérez un site gourmand en bases de données. Quelques notes d'évaluation.
4. Apprenez à aimer l’opérateur ternaire.
5. Si vous pensez qu'il y a une partie réutilisable dans le projet, vérifiez si elle est déjà dans PEAR avant d'écrire une ligne de code. De nombreux programmeurs PHP savent que PEAR est une bonne bibliothèque de ressources, même si de nombreux programmeurs ne le savent pas. Cette bibliothèque de ressources en ligne contient plus de 400 extraits de programmes réutilisables que vous pouvez utiliser immédiatement dans vos programmes. À moins que votre projet soit vraiment particulier, vous pouvez toujours trouver un forfait PEAR pour vous faire gagner du temps. (Voir PECL)
6. Utilisez highlight_file() pour imprimer automatiquement un code source magnifiquement formaté. Si vous cherchez de l'aide avec un script sur les forums de discussion, IRC, etc., cette fonction est très pratique à utiliser. Bien entendu, veillez à ne pas révéler accidentellement vos informations de connexion à la base de données, vos mots de passe, etc.
7. Utilisez la fonction error_reporting(0) pour empêcher les utilisateurs de voir des informations d'erreur potentiellement sensibles. ] Idéalement, les serveurs de publication devraient être complètement désactivés dans php.ini. Mais si vous utilisez un serveur Web partagé et que vous n'avez pas votre propre fichier php.ini, votre meilleure option dans ce cas est d'ajouter error_reporting(0); (ou d'utiliser la méthode require_once()). Cela bloque complètement les requêtes SQL et les chemins d'accès sensibles en cas d'erreur.
8. Utilisez gzcompress() et gzuncompress() pour compresser/décompresser explicitement les chaînes avant de stocker des chaînes volumineuses dans la base de données. Cette fonction intégrée à PHP utilise l'algorithme gzip et peut compresser le texte normal jusqu'à 90 %. J'utilise ces fonctions à chaque fois que je souhaite lire ou écrire un champ de type BLOB. La seule exception est lorsque j'ai besoin d'une recherche en texte intégral.
9. Obtenez plusieurs valeurs de retour d'une fonction en passant des paramètres par "référence". Comme l’opérateur ternaire, cette astuce est connue de la plupart des programmeurs ayant une formation formelle en programmation. Mais les programmeurs dont l'expérience HTML est supérieure à celle de Pascal ont plus ou moins posé cette question "Comment renvoyer plusieurs valeursà partir d'une fonction lorsque return ne peut être utilisé qu'une seule fois ?" Symbole "&", passé par "référence" au lieu de "valeur".
10. Comprenez pleinement les dangers des « guillemets magiques » et de l’injection SQL. J'espère que les développeurs qui lisent ceci sont déjà familiers avec l'injection SQL. Mais je l’énumère quand même ici car c’est effectivement un peu difficile à comprendre. Si vous n’avez pas entendu parler de cette déclaration, passez le reste de la journée à chercher sur Google et à lire à ce sujet.