Rechercher : dans
Par :

PHP - Boucle For et Concaténation ?

Dernière réponse le 14 jun 2009 à 12:25:17 Aloyis, le 12 jun 2009 à 12:30:12 
 Signaler ce message aux modérateurs

Bonjour,

J'ai un problème dans mon code PhP ; à la fin d'un script de modifications d'images, via GD, je souhaite détruire toutes les images en mémoire pour libérer de la place.
J'utilise donc

imagedestroy($image1);
imagedestroy($image2);
imagedestroy($image3);
imagedestroy($image4);
imagedestroy($image5);

ce qui fonctionne parfaitement.

Mais dans un souci d'optimisation, j'essaie une boucle for telle que

for ($i=1, $i==5, $i++)
{
imagedestroy($image'.$i');

}


et là, " Parse error: parse error, expecting `';' "

Si quelqu'un pouvait me dire ce qui cloche exactement avec la concaténation de ma variable, ça me débloquerait. J'ai essayé en variant apostrophes/guillemets, en mettant un point ou les deux, rien n'y fait.

Merci d'avance !

Configuration: Windows Seven
Firefox 3.0.10

Meilleures réponses pour « PHP Boucle For et Concaténation ? » dans :
PHP - Concaténation VoirPHP permet de concaténer des chaînes de caractères grâce à l'opérateur "." : $concatenation= $a . $b; Ou encore pour affecter, dans la variable $a, la valeur de la concaténation de $a et de $b : $a.=$b; Pour concaténer des chaînes et des...
Comment lire un fichier ligne par ligne VoirComment lire un fichier ligne par ligne Préambule Boucle while Syntaxe Exemple Astuces Bonus Boucle for Syntaxe Préambule Une des erreurs les plus communes dans l'apprentissage des scripts "bash" sous GNU/LInux pour lire un fichier...
PHP - Structures conditionnelles VoirQu'est-ce qu'une structure conditionnelle? On appelle structure conditionnelle les instructions qui permettent de tester si une condition est vraie ou non, c'est-à-dire si la valeur de son expression vaut 0 ou 1 (le PHP associe le mot clé true à 1...
PHP - Les variables VoirConcept de variable avec PHP Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage PHP peuvent être de trois...

1

Mimiste, le 12 jun 2009 à 13:36:50

Salut

tu doit utiliser des variables dynamiques

imagedestroy(${ 'image' . $i });

mais bon le plus propre aurai été de prevoir le coup des le debut et faire un tableau

Si ce message vous a aidé n'oubliez pas de dire MERCI ;)
La sportivité commence là où le diesel s'arrête !
You can still watch this ? Wait until the Vtec kick in !

Répondre à Mimiste

2

Alain_42, le 12 jun 2009 à 13:59:35

De plus:

for ($i=1, $i==5, $i++)

c'est pas une boucle ça !

il faut:

for ($i=1, $i<=5, $i++) 



pour $i égal à 0 à $i inférieur ou égal à 5 avec $i +1 à chaque tour

Répondre à Alain_42

3

Aloyis, le 13 jun 2009 à 21:09:19

D'abord, merci d'avoir répondu aussi vite, je pensais attendre plus longtemps ^^'

Cependant, le code modifié comme vous me l'avez indiqué tout deux, donc tel que

for ($i=1, $i<=5, $i++)
{
imagedestroy(${ 'image' . $i });

}

me retourne néanmoins 'parse error, expecting ;' pour la première ligne de la boucle.

La ligne qui précède étant

imagejpeg($image_fin);

ai-je manqué une règle particulière de GD ou quelque chose du genre qui l'empêche d'exécuter le code ?

Répondre à Aloyis

4

le père, le 13 jun 2009 à 21:31:24

Bonjour

for ($i=1; $i<=5; $i++)
Tu aurais pu le corriger toi-même !

Répondre à le père

5

 Aloyis, le 14 jun 2009 à 12:25:17

Merci beaucoup !

Le script fonctionne à merveille maintenant.

Effectivement, après coup je me rends compte que la seconde erreur était basique.
À ma décharge, je n'ai commencé le php que depuis 5 jours ^^'

Répondre à Aloyis