La création du tableau se produit-elle sur chaque boucle foreach?

Je me trouve en train de faire ceci:

string states = "this,that,theother"; foreach(string state in states.Split(',')) { } 

Et je me demande; La chaîne des states est-elle divisée sur chaque boucle foreach?

Cet exemple est en c # mais les autres langages de programmation se comportent-ils différemment ?

Les divisions PHP et JavaScript sont-elles divisées sur chaque boucle foreach?

À partir d'une perspective .NET:

Non, l' state.Split() se produit une fois.

Autres langues?? Je n'ai aucune idée de ce que vous voulez dire. Vous devriez retaginer votre question en tant que php ou javascript même si je suis tout à fait certain que javascript se comporterait de la même manière.