2009-07-02 6 views
2

Quel est le meilleur en termes de vitesse et de performance? Pour appeler la fonction chaque fois que vous avez besoin de la valeur (par exemple mysql_num_rows, time) ou pour copier la valeur de retour à une variable locale et l'utiliser à la place. Exemple: Disons que j'appelle la fonction time() dix fois pour obtenir l'heure actuelle, serait-il plus rapide d'utiliser une variable locale à la place?appel fonction à chaque fois ou créer une variable locale

Répondre

12

Cela se résume à:

Est-ce que cela rend votre code plus lisible? Cela devrait être votre première considération.

Combien coûte l'appel de fonction? Ne pas micro-optimize. Comme si chaque appel obtient 2000 enregistrements à partir d'une base de données ou appelle un service Web distant alors oui la performance de cet appel est significatif. Mais la plupart du temps ce n'est pas le cas.

Est-il approprié de stocker la valeur? Par cela je veux dire prendre le temps(), il peut changer entre les appels. Cela peut être ce que vous voulez ou vous pouvez vouloir utiliser le même temps à plusieurs points, auquel cas vous le stockez.

3

Les variables sont nettement plus rapides.

Questions connexes