comment changer le nom de la variable php dans une boucle?
Permet de dire que j'ai une variable appelée $fichier et pour la boucle: for($i=1; $i <= 5; $i++) {}
Pour chaque itération de la boucle for, la $i
valeur sera ajoutée à la $file
nom de la variable, donc après la boucle se termine, je doit avoir cinq variables: $file1
, $file2
, $file3
, $file4
, et $file5
.
- Pourquoi voulez-vous faire cela? À l'aide d'un (associatif) tableau comme un portable d'espace de noms est presque toujours une meilleure solution.
Vous devez vous connecter pour publier un commentaire.
Utilisation ${'varname'} syntaxe:
Toutefois, il est souvent préférable d'utiliser des tableaux au lieu de cela.
$line01="foo"
....$line55="bar"
ce faisant, cette variable variable méthode semble faire le plus de sens pour moi, à moins qu'il existe une meilleure façon dans la création de la ligne par les lignes? Donc. comment puis-je eu le 0 de rembourrage sur 01-09 ainsi? Je suppose une instruction if dans la boucle for mais est-il une meilleure façon?Il est un moyen de le faire:
Mais c'est un mauvaise idée pour ce faire. Pourquoi est-ce une mauvaise idée? Parce que c'est ce tableaux sont destinés. Faire ceci à la place:
(NB. C'est la convention habituelle pour commencer clés du tableau à 0 au lieu de 1, mais vous n'avez pas à le faire.)
il est possible de faire ce que vous voulez, mais de créer des variables à la volée semble une manière inhabituelle pour résoudre un problème comme celui-ci (je peux me tromper)
Je suggérons de conserver les noms de fichiers dans un tableau, de cette façon, vous pouvez facilement parcourir les fichiers plus tard, ou ajouter un fichier supplémentaire et ne pas avoir à changer tout codé en dur, les noms de variables
Vous pouvez utiliser un tableau ainsi. Il n'a pas la même incidence sur, mais c'est généralement ce que je vois utilisées dans ces situations.
Voir le manuel PHP sur Les Variables.
démo