Fonction pour renommer un type de fichier dans un répertoire

Guillaume-60
Invité n'ayant pas de compte PHPfrance

24 janv. 2013, 09:31

Bonjour,
Voila je bloque surement sur un truc tout bête.
J'ai un répertoire avec des photos et un fichier xml.
J'aimerai renommer ce fichier xml, le problème c'est que je ne sais pas a l'avance comment il se nomme (je sais comment il va se nommer, je sais aussi qu'il commence toujours par les mêmes lettres "Anno")
Comme dans ce répertoire il n'y aura jamais 2 fichiers xml, j'ai tenté ceci ;
rename("test/*.xml", "test/annonce.xml");

Mais bon c'était un essai....
Merci de m'éclairer.

ViPHP
xTG
ViPHP | 7331 Messages

24 janv. 2013, 09:40

Tu peux utiliser glob('*.xml') pour récupérer la liste des .xml d'un dossier.

Guillaume-60
Invité n'ayant pas de compte PHPfrance

24 janv. 2013, 12:15

Merci, j'ai donc réussi avec ceci :
$dir = 'test/*.{xml}';
$files = glob($dir,GLOB_BRACE);
foreach($files as $dir)
{
        
		$nomfichier = $files [0];
		rename($nomfichier, "test/annonce.xml");
}
ca marche parcequ'il n'y a qu'un fichier xml. Mais ca marche...
Merci encore

ViPHP
xTG
ViPHP | 7331 Messages

24 janv. 2013, 13:53

Euh l'utilité de la boucle ? :P
$dir = 'test/*.{xml}';
$files = glob($dir,GLOB_BRACE);
if( isSet($files[0]) )
  rename($files [0], "test/annonce.xml");