Я хотел бы удалить все изображения из папки tempimages, которая старше 1 часа. Я нашел пример ниже в Stack Overflow, но я получаю ошибку синтаксического анализа:
синтаксическая ошибка, неожиданный '{' в /delete-old-images.php в строке 13
<?php function destroy($dir) { $mydir = opendir($dir); while($file = readdir($mydir)) { if($file != "." && $file != "..") { chmod($dir.$file, 0777); if(is_dir($dir.$file)) { chdir('.'); while($dir.$file) { if(date("U",filectime($file) >= time() - 3600) { unlink($dir.$file) } } } else unlink($dir.$file) or DIE("couldn't delete $dir$file<br />"); } } closedir($mydir); } destroy("tempimages/"); ?>
Данные моего сервера:
PHP Version 5.3.18-nmm1 System Linux #116-Ubuntu SMP Tue Nov 12 19:37:57 UTC 2013 x86_64 Build Date Oct 26 2012 16:30:11 Server API Apache 2.0 Handler
Как это исправить?
Вы забыли закрыть date()
if(date("U",filectime($file)) >= time() - 3600) -------^
и пропустил полуточку здесь
unlink($dir.$file); -----^
Вы не закрываете скобку для условия.
if(date("U",filectime($file) >= time() - 3600)
Должно быть
if(date("U",filectime($file) >= time() - 3600))
и пропустил полуколонну
unlink($dir.$file)
Должно быть
unlink($dir.$file);