#!/usr/bin/php 12)) { unset($dateTimeOriginal); } if (isset($dateTimeOriginal) && is_array($dateTimeOriginal) && ($dateTimeOriginal['d'] < 01 || $dateTimeOriginal['d'] >31)) { unset($dateTimeOriginal); } if (isset($dateTimeOriginal) && is_array($dateTimeOriginal) && ($dateTimeOriginal['y'] < 1900 || $dateTimeOriginal['d'] >2021)) { unset($dateTimeOriginal); } } // Récupération de la date de modification if ($traitement_ok && !isset($dateTimeOriginal)) { $dateTimeOriginal_explode = explode(":", date("Y:m:d", filemtime($entry))); if (isset($dateTimeOriginal_explode)) { $dateTimeOriginal['y'] = $dateTimeOriginal_explode[0]; $dateTimeOriginal['m'] = $dateTimeOriginal_explode[1]; $dateTimeOriginal['d'] = $dateTimeOriginal_explode[2]; } } // Création des dossiers et déplacement du fichier if ($traitement_ok && isset($dateTimeOriginal) && is_array($dateTimeOriginal)) { // TRIER PAR DATE $rep_dest = $dateTimeOriginal['y'] ."/". $dateTimeOriginal['m'] ."/". $dateTimeOriginal['d']; // TRIER PAR APPAREIL /* if (isset($file_exif) && is_array($file_exif) && array_key_exists('Make', $file_exif) && $file_exif['Make'] !== null ) { $rep_dest = $file_exif['Make']; } if (isset($file_exif) && is_array($file_exif) && array_key_exists('Model', $file_exif)) { $rep_dest .= '-' . $file_exif['Model']; } if (isset($file_exif) && is_array($file_exif) && array_key_exists('InternalSerialNumber', $file_exif) && $file_exif['InternalSerialNumber'] !== null ) { $rep_dest .= '-'.$file_exif['InternalSerialNumber']; } */ // TRAITEMENT COMMUN // Création du dossier destination if (!empty($rep_dest)) { $rep_dest = str_replace("\0", '', $rep_dest); } if (!file_exists($rep_dest)) { // Vérifie et nettoie la chaîne de caractères null if (!empty($rep_dest)) { if (mkdir($rep_dest, 0777, true)) { echo $rep_dest . " créé.\n"; } else { die('Echec lors de la création des répertoires...'."\n"); } } } // Déplacement $file_dest = $rep_dest."/".$entry; if (!file_exists($file_dest)) { rename($entry, $file_dest); $undoCmd .= "mv \"".$file_dest."\" \"".$entry."\"\n"; $message .= " => ".$file_dest."\n"; } else { $md5_file_src = md5_file($entry); $md5_file_dst = md5_file($file_dest); if ($md5_file_src == $md5_file_dst) { $message .= " [ERREUR] ".$file_dest." existe déjà ! Destruction car même empreinte $md5_file_src / $md5_file_dst\n"; unlink($entry); } else { $message .= " [ERREUR] ".$file_dest." existe déjà ! Mais pas avec la même empreinte.\n"; } } // Ecriture du log file_put_contents($file_undo_str, $undoCmd, FILE_APPEND); file_put_contents($file_log_out_str, $message, FILE_APPEND); echo $message; } } } closedir($handle); }