L.S.

Uit een camera wordt iedere seconde een foto gepushed naar een server.
Nu gaat het om grote hoeveelheden files die ik eigenlijk wil verplaatsen naar een directory met de aanmaak datum van die file.
Nu heb ik via behendig zoeken het volgende script in elkaar gekleid.
Maar ik krijg een error op regel 23..

<?php
$files = array();
$index = array();
$yesterday = strtotime('yesterday');

if ($handle = opendir('/srv/camera')) {
clearstatcache();
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
$files[] = $file;
$index[] = filemtime( '/srv/camera/'.$file );
}
}
closedir($handle);
}

asort( $index );
mkdir('/srv/camera/'.$yesterday);

foreach($index as $i => $t) {

if($t < $yesterday) {
if (copy('/srv/camera/'.$files[$i],'/srv/camera/'.$yesterday'/'.$files[$i])){
@unlink('/srv/camera/'.$files[$i]);
}}

}
?>

Dus ik probeer een directory te maken met een datum, en daarna alle foto's van die datum te verplaatsen naar die directory. Dit script staat in de crontab van die suse bak.

Ik hoop dat de experts er evennaar kunnen kijken.

Cees

Maar ik krijg een error op regel 23.. 

Eens kijken of mijn glazen bol jouw logfiles kan zien.... ;-)
Afgezien van het feit dat wij inderdaad jouw foutmeldingen niet kunnen bedenken, vraag ik me ook af waarom je niet de functie [php]rename[/php] gebruikt in plaats van copy en unlink.
PHP Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/muscam/old_file_removal.php on line 23

Tsja newbie rename kan ook, ik zag ok dat $yesterday het aantal seconde is t.o.v. 1 jan 1970, dus daar moet ik ook nog wat op verzinnen...

En ik begin net met php
alvast bedankt
De error komt omdat je hier een punt (concatenate operator) mist:
<?php
$yesterday'/'
?>
Tussen $yesterday en '/' moet een punt.

Reageren