Maison  >  Article  >  développement back-end  >  Explication détaillée de la différence entre la boucle for et foreach en PHP

Explication détaillée de la différence entre la boucle for et foreach en PHP

黄舟
黄舟original
2017-03-08 09:16:451442parcourir

Cet article présente principalement la différence entre la boucle for et foreach en PHP, qui a une bonne valeur de référence. Jetons un coup d'oeil avec l'éditeur ci-dessous

La différence entre la boucle for et foreach

foreach repose sur IEnumerable.

La première fois var a in GetList (), appelez GetEnumerator pour renvoyer le premier objet et attribuez-le à a,

puis appelez MoveNext à chaque fois que var a dans GetList() est exécuté jusqu'à la fin de la boucle GetList( pendant

) n'est exécutée qu'une seule fois.

View Code

La boucle for est positionnée par indice list[3] est équivalent à *(list 3).

View Code

ou une boucle appellera GetCount() pour comparer la longueur à chaque fois qu'elle boucle. Et foreach ne prend pas en compte la longueur et n'appelle GetList() qu'une seule fois.

Conclusion.

Lorsque la longueur est fixe ou que la longueur n'a pas besoin d'être calculée, la boucle for est plus efficace que foreach.

Lorsque la longueur est incertaine ou qu'il y a une perte de performances dans le calcul de la longueur, utilisez foreach C'est plus pratique

et les objets de la collection seront verrouillés pendant foreach. ne peut pas être modifié pendant la période.

Ce qui précède est le for en PHP Pour une explication détaillée de la différence entre loop et foreach, veuillez faire attention au site Web PHP chinois ( www.php.cn) pour plus de contenu connexe !



Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn