Re: Roztrideni fotografii do adresaru dle EXIF

From: Kamil <sverak (zavinac)>
Date: Wed, 27 Dec 2006 14:55:00 +0100
> Diky za nabidku. Trideni podle EXIF by v podstate mohlo stacit. Uvazoval
> jsem jeste o trideni podle rozliseni, ale neni to podminkou.

Ale notak v exifu je samo i rozlišení..
$exif["ExifImageWidth"]
$exif["ExifImageLength"]

> Apache (Apache
> 1.3.23, PHPTriad) mi na PC bezi, ale jestli to podporuje ext exif nevim.
> Jestli je mozne ten script poslat, tak budu rad. Zkusim se tim nejak
> prokousat.

Aby ti to fungovalo, tak musíš zrušit středník v php.ini před:
;extension=php_exif.dll a restartovat apache

tady je ten script. Přejmenovává fotky z adresare zdroj do adresare
cil/datum/jmeno.

<?
        // script rozdělí obrázky z adresare zdroj podle datumu pořízení
        // souborů..
$zdroj="c:/temp/";
$cil="c:/temp/fotky/";

$zdroj=str_replace("\\", "/", $zdroj);
$handle=opendir($zdroj);
$i=0; $n=0;
while (false!==($file = strtolower(readdir($handle)))) {
    if (substr($file, -3, 3)=="jpg") {
        @$exif = read_exif_data ($zdroj.$file);
        @$cesta=substr(str_replace(":","",$exif["DateTimeDigitized"]),0,8);
        if (!$cesta) {
            $cas = filemtime($zdroj.$file);
            $cesta=date("Ymd", $cas);
        }
                // otestujeme jestli už jsme vytvářeli adresar
        if (!isset($zdr[$cesta])) {
            @mkdir($zdroj.$cesta);
            $zdr[$cesta]="";
        }
                // kdyz soubor neexistuje prejmenuj
        if (!file_exists("$cil$cesta/$file")) {
            rename($zdroj.$file, "$cil$cesta/$file");
            $i++;
        } else {
            $n++;
        }
    }
}
echo "celkem překopírováno $i souorů a nepřekopírováno $n souborů";
?>

-- 
Cao,
 Kamil
Received on 27. 12. 2006, 14:55 CET

This archive was generated by hypermail 2.2.0 : 27. 12. 2006, 14:55 CET