From: Vincent Vanwaelscappel Date: Thu, 1 Sep 2022 16:15:46 +0000 (+0200) Subject: wait #4209 @3 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=021762ed3b44c556ddb148024838cedbf5877b78;p=cubist_util.git wait #4209 @3 --- diff --git a/src/Files/Files.php b/src/Files/Files.php index 87a0f5c..616ece0 100644 --- a/src/Files/Files.php +++ b/src/Files/Files.php @@ -1,6 +1,9 @@ getMTime()); + $cmd = 'find ' . $dir . ' '; + if (!$recursive) { + $cmd .= '-maxdepth 1 -mindepth 1 '; } - return $time; - } - - public static function checkHashDir($dir) - { - $nb = 0; - $time = 0; - $size = 0; - - $files = self::getDirectoryIterator($dir, true); - - foreach ($files as $f) { - $time = max($time, $f->getMTime()); - $nb++; - $size += $f->getSize(); + $cmd .= '-type f '; + if (count($extensions)) { + $cmd .= '\( '; + $exts = []; + foreach ($extensions as $extension) { + $exts[] = '-name "*.' . $extension . '"'; + } + $cmd .= implode(' -o ', $exts) . ' \) '; } - - return hash('sha256', $dir . '$$' . $nb . '//' . $size . '|||' . $time); + $cmd .= '-type f -printf "%T@ %p\n" | sort -n | cut -d\' \' -f 2- | tail -n 1'; + return filemtime(trim(`$cmd`)); } /**