Renommage massif de fichiers

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 979 fois - Téléchargée 30 fois

Contenu du snippet

Ce script permet de renommer en une suite logique les fichiers de même type d'un répertoire.

Exemple : j'ai un répertoire contenant 50 images portant l'extension "jpg" que je veux renommer en une suite logique "img01.jpg", "img02.jpg", [...], "img50.jpg".
- Je copie le source ci-dessous dans un fichier "rename.php" que je place dans le répertoire;
- J'invoque le fichier de la manière suivante :

rename.php?dir=.&ext=jpg&basename=img

La sortie indique les renommages effectués;

- et voilà ! Ceci étant un exemple, rien ne vous empêche d'adapter les paramètres de l'URL à vos besoins (dir = le dossier où se trouvent les fichiers à renommer, ext = l'extension desdits fichiers, basename = le nom de base des fichiers renommés).

Source / Exemple :


<?php

/*

  • Renommage massif de fichiers
  • Auteur : Dean
  • /
$dir = isset($_GET['dir'])?$_GET['dir']:'.'; $ext = isset($_GET['ext'])?$_GET['ext']:''; $basename = isset($_GET['base'])?$_GET['base']:'file'; $dates = array(); $dir_handle = opendir($dir); while($entry = readdir($dir_handle)) { $path = $dir.'/'.$entry; if(is_file($path) && strtolower(substr($entry, strrpos($entry, '.') + 1) == strtolower($ext))) $dates[$path] = filemtime($path); } closedir($dir_handle); asort($dates); $i = 0; while(list($path, $date) = each($dates)) { $i++; $new_name = $basename.substr(str_repeat('0', strlen(count($dates))).$i, -strlen(count($dates))).'.'.$ext; if(@rename($path, $new_name)) echo 'Renommage de <b>', basename($path), '</b> en <b>', $new_name, '</b> effectué avec succès !<br />'; else echo 'Renommage de <b>', basename($path), '</b> en <b>', $new_name, '</b> impossible.<br />'; } ?>

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1
Date d'inscription
samedi 29 octobre 2005
Statut
Membre
Dernière intervention
29 octobre 2005

salut
je ne comprend pas dans quel logiciel il faut copier le sources
je ne comprend pas non plus comment on invoque le ficher

merci d'avance
Messages postés
41
Date d'inscription
mercredi 30 janvier 2002
Statut
Membre
Dernière intervention
20 mars 2003

c'est bien mais pense un peu à commenter ton code... c'est le défaut majeur... :|

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.