Quelques astuces pour PHP

Développant régulièrement des sites en PHP, je suis tombé aujourd’hui sur le site de Prendre un Café qui publie 12 règles à suivre pour optimiser le PHP.

Je les copie ici:

  1. Si vous pouvez déclarer une méthode statique static, faites-le: les performances sont multipliées par 4.
  2. Éviter les méthodes automagiques comme __get, __set ou __autoload.
  3. require_once et son copain include_once sont très coûteux.
  4. Utilisez des chemins absolus dans les appels à require ou include quand vous le pouvez : PHP perdra moins de temps à résoudre les chemins système.
  5. Utilisez $_SERVER['REQUEST_TIME'] plutôt que time() pour obtenir le temps système.
  6. Voyez si vous ne pouvez pas utiliser strncasecmp, strpbrk and stripos plutôt que de recourir aux expressions régulières.
  7. str_replace est plus rapide que preg_replace, mais strtr est 4 fois plus rapide que preg_replace !
  8. L’emploi de tableaux en tant qu’arguments des fonctions de remplacements de chaînes de caractères est plus couteux que l’utilisation multiple de cette même fonction chaîne par chaîne à remplacer.
  9. La suppression de la sortie d’erreur par l’emploi du caractère @ est très coûteuse.
  10. $row['id'] est 7 fois plus rapide d’accès que $row[id].
  11. Les messages d’erreur en général sont coûteux.
  12. N’utilisez pas de fonctions à l’intérieur des boucles comme for ($x=0; $x < count($array); $x++) : ici la méthode count() est appelée à chaque itération.

J’ai cru bon de les republier ici, surtout que quelques-unes m’on un peu accroché… Plus particulièrement, les #3, 4, 5, 10 et 12.

Celle où j’ai le plus fait “ha ouain” est la #12. Elle est en fait très logique, mais nombre de fois j’ai tappé:

for($x=0; $x

Pour faire une boucle dans un tableau quelconque. Je pourrai donc réduire légèrement les ressources systèmes utilisées en faisant simplement:

$max = count($array);
for($x=0; $x<$max; $x++)

Bref, pratique à savoir ! :) Pour les autres, non pas que j’utilisais une méthode non optimale, mais c’est toujours très bon à savoir !

Un commentaire à “Quelques astuces pour PHP

Laissez un commentaire