Manipulation de fichiers

bonjour :slight_smile:
j’utilise ce petit bout de code pour supprimer un fichier et renomer une liste fichiers pour pas casser la chaine et je ne sais pas comment ajouter la gestion de nom long
exemple pour des fichiers nommés 1,2,3, etc si je supprime 2, 3 et renommé en 2 tout va bien mais si je prends l’exemple 001, 002 etc 001 et bien supprimé mais la liste n’est pas renommé 001 ou [constante]1 peu importe
quel type de fonction pourrait me faire sa?
merci :wink:


if ($id != ""){ 
$rep = './test/';
unlink($rep.$id); 
$id=$id+1;
    while (file_exists($rep.$id))
 {
   rename($rep.$id, $rep.($id-1));
   echo "Fichier $id renommé en $id ";
   $id++;
 }
}

Petite question : tu as indenté le code ou c’est un bug du forum?

Sinon ton problème vient de ta façon de générer le nom du fichier.

$rep.($id-1)

->

sprintf(’%s%03d’, $rep, $id -1);

etc.

euh a vrai dire j’en sais rien mon premier post sur le forum pour un autre sujet a planter lamentablement :slight_smile: au moment du post
sinon j’ai un certain
guymage sur ce post qui a tenté de repondre et qui obtient un : Message supprimé le 01/06/2007 à 14:27 pour le motif suivant : . << en gise de reponse sinon aucune idée de ce que cela signifie

merci pour le sprintf je vais me penché dessus voir si j’y arrive avec ça;)

C’est guymage (ou jeanguy) qui s’est planté lamentablement.

y aurait il une alternative a sprintf parce que la je patoge dans le "j’ai presque rien compris " :slight_smile:

en fait j’ai presque envie de mettre resolu dans le titre parce la fonction colle bien a ce que je veux faire mais tres dur a mettre en place a mon niveau
et 1 bon point a Sans-Nom aussi tien :wink:
Edité le 02/06/2007 à 20:21

En quoi elle est dure? Je pige pas, mais bref :slight_smile:

pour un programeur j’imagine mais je ne le suis pas :wink: je fais avec les moyens du bord

mais en fait c’est pas que la fonction est trop compliqué j’ai presque tout compris a contrario j’ai presque rien compris :wink:
c’est surtout pour le mettre en place
en fait mon fichier va etre composé d’une variable et d’une constante mais pour faire un lien “supprimé” sur chaque j’ai defini une autre variable qui forme mon fichier(j’y suis pas arrivé autrement)
et c’est la que sa pose probleme
mais je vais y arrivé
c’est possible de faire weekend2 - 1 = weekend1 ?
je me le demande ou sinon je le fait mal surement
:wink:

Me semble bien que si tu fais ça :

$we = 'weekend2';
echo $we, "<br/ >\n"; // affiche weekend2
--$we;
echo $we, "<br/ >\n"; // affiche weekend1
++$we;
echo $we, "<br/ >\n"; // affiche weekend2
--$we; // 1
--$we; // 0
--$we; // ?
echo $we, "<br/ >\n"; // affiche weekend?

Ne connaissant pas la table ASCII, je te dirais que “?” est à remplacer par un caractère avant 0 dans la table ASCII (genre les ponctuations, ou tout simplement z).

Hu ?


$we = 'weekend2';
--$we; // ce n'est pas un entier, php ne fait rien
echo $we; // affiche weekend2

Mandarounet : si si :slight_smile:

www.php.net…

Bon me suis quand même loupé, ça ne marche qu’avec l’opérateur “++”.

La classe, je connaissais pas, merci ! :slight_smile:
Edit : mais ça fonctionne avec les chaines aussi ?
Edité le 06/06/2007 à 12:07

C’est bien ce qui est écrit non? :slight_smile:

Ben “character variables” chez moi ça désigne une variable contenant un caractère.
Je ferai le test ce soir.

Sauf que :

‘z’ + 1 = ‘AA’ => AA = chaine

Vrai !
Merci. :slight_smile: