Created
March 28, 2017 10:07
-
-
Save gustawdaniel/f12cd99ba998b2166ed45aae0dc061be to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
// definicje funkcji | |
// funkcja przyjmuje ścieżkę i czas w sekundach dla którego | |
// chemy usunąć pliki stworzone przed tym czasem | |
function clear($path,$time) | |
{ | |
// listujemy wszystki pliki z danej lokaci | |
$allFiles = scandir($path); | |
// wycinamy "pliki" . oraz .. | |
$files = array_diff($allFiles,["..","."]); | |
// dla każdego pliku/katalogu | |
foreach ($files as $file) { | |
// zapisujem ścieżkę taą którą dostaliśmy + tego konkretnego pliku/katalogu | |
$file = $path . '/' . $file; | |
if(is_dir($file)) {// jeśli to jest katalog | |
echo "dir: " . $file . "\n"; | |
clear($file,$time);// wywołujemy clear na tej nowej ścieżce | |
} else {// jeśli plik, to | |
echo "file: " . $file . "\n"; | |
// sprawdzamy czy były utworzony przed czasem podanym jako arument | |
// podczas wywyoływania skryptu | |
if(filemtime($file) < $time) | |
{ | |
unlink($file);// jeśli tak to usuwamy plik | |
} | |
} | |
} | |
} | |
// część wykounjąca | |
// odpalamy to na katalog "a", żeby nie usunąć ałego systemu | |
// za czas bierzemy pierwszy ciąg zankóœ wpisanych za nazwą programu | |
clear("a",$argv[1]); | |
// użycie | |
// php clear.php 12143345 | |
// zamiast tych sekune 12143345 wkeljamy to co zwrócił init.php |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
// funkcja do tworzenia jeśli katalog nie istnieje | |
function mkdirIfNotExist($path) { | |
if(!is_dir($path)) { | |
mkdir($path); | |
} | |
} | |
echo "----------------\n"; | |
// tworzymy katalogi i pliki | |
mkdirIfNotExist("a"); | |
mkdirIfNotExist("a/b"); | |
mkdirIfNotExist("a/c"); | |
file_put_contents("a/f1.txt",""); | |
file_put_contents("a/b/f2.txt",""); | |
sleep(2); // czekamy | |
echo time() . "\n"; // wyświetlamy czas | |
sleep(2); // czekamy | |
// tworzymy dwa inne plik, ważne że te wcześniej miały iną datę | |
// stworzenia a te mają późniejszą niż w echowanym time() | |
file_put_contents("a/f3.txt",""); | |
file_put_contents("a/b/f4.txt",""); | |
echo "----------------\n"; | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment