Mutare fisiere mai vechi de 30 de zile in alt folder
Scris: Joi Noi 28, 2013
Colectez în fiecare zi fisiere într-un anumit foder. Vreau să am în folderul de colectare doar fisierele adunate din ultimele 30 de zile, pe cele mai vechi de 30 de zile nu vreau să le şterg de pe server, doar să le mut într-un alt folder.
Am găsit un script care ştergea fisierele mai vechi, eu am încercat să îl modific şi să îl fac să le mute. Ceva nu merge bine, nici nu le şterge pe cele vechi, nici nu le copiază în altă parte:
Deşi am setat permisiunile directorului "arhiva" la 777, nu am nimic în el, este gol iar fişierele vechi sunt neatinse. Iar asta fără să apară vre-un mesaj de eroare...
Am găsit un script care ştergea fisierele mai vechi, eu am încercat să îl modific şi să îl fac să le mute. Ceva nu merge bine, nici nu le şterge pe cele vechi, nici nu le copiază în altă parte:
Cod: Selectaţi tot
<?php
$noi = '/proaspete/';
$vechi = '/arhiva/';
if (is_dir($noi)) {
if ($dh = opendir($noi)) {
while ($file = readdir($dh)) {
if(!is_dir($noi.$file)) {
if (filemtime($noi.$file) < strtotime('-30 days')) {
copy($noi, $vechi) or die("Nu pot copia din $noi in $vechi.");
}
if (copy($noi, $vechi)){
unlink($noi.$file);
}
}
}
}
}
?>