OVH Cloud OVH Cloud

comment bien classer des photos

3 réponses
Avatar
gb
Bonjour,

Je voudrais récupérer les photos issues d'un APN (en jpg)et stockées dans le
dossier image (ou un sous-dossier ), un peu n'importe comment et avec un peu
n'importe quel nom ,et les déplacer dans différents dossiers (nommés
aaaa-mm) en fonction de la date EXIF de chaque photo ?
Les dossiers seraient à créer à la volée s'ils n'existent pas, bien sûr.

Avez-vous déjà vu qqch comme ça quelque part?
Ou qqu'un saurait-il le faire ?

Merci

Guy

3 réponses

Avatar
P'tit Marcel
Hello,

Je voudrais récupérer les photos issues d'un APN (en jpg)et stockées dans le
dossier image (ou un sous-dossier ), un peu n'importe comment et avec un peu
n'importe quel nom ,et les déplacer dans différents dossiers (nommés
aaaa-mm) en fonction de la date EXIF de chaque photo ?
Les dossiers seraient à créer à la volée s'ils n'existent pas, bien sûr.


jamais fait, mais ça semble possible avec l'extension EXIF :
http://fr.php.net/exif

ça donnerait ça:

$exif = exif_read_data($imagejpg, 'IFD0');
if($exif==úlse) die("l'image ne contient aucun entête");

if(!empty($exif['FILE.FileDateTime'])) {
$date_n = $exif['FILE.FileDateTime'];
if(is_numeric($date_n)) {
$date_t = date('Y-m', $date_n);
if(!empty($date_d)) {
$repertoire = "./$date_t";
if(!is_dir($repertoire)) {
mkdir($repertoire, 0600) or
die("impossible de créer le répertoire: $repertoire");
}
elseif(!is_writable($repertoire))
die("répertoire $repertoire non modifiable");

$destination = repertoire . '/' . basename($imagejpg);
rename($imagejpg, $destination) or
die("impossible de déplacer l'image dans $destination");
}
else die("horodatage non numérique: $date_n");
} else {
echo "entête d'horodatage non trouvén"
print_r($exif);
die();
}


a+
--
P'tit Marcel
stats sur les forums modérés http://www.centrale-lyon.org/ng/

Avatar
gb
Bonjour
et Merci.

Je viens d'essayer de tester ça mais ça n'a pas marché ;(
Il faudrait que je regarde ma config d'un peu plus pres car comme conseillé
dans fr.php.net/exif que vous m'avez mis en lien, j'ai bien modifié le
fichier php.ini avec exif et mbstring mais ça :
Pour activer le support EXIF en PHP, il suffit d'ajouter l'option de
compilation --enable-exif.

je ne sais pas où le faire....

je cherche....



merci encore


-----------et suite à rappel à l'ordre du modérateur...je supprime le reste
Avatar
Cbc
Pour activer le support EXIF en PHP, il suffit d'ajouter l'option de
compilation --enable-exif.

je ne sais pas où le faire....


C'est lors de la compilation de PHP. Mais je sais pas comment ça marche
avec windows...