Stránka 1 z 1
[PHP] smazání všech souborů v adresáři
Napsal: 17 pro 2014, 14:21
od markoni
Zdravím
Mám takový problém potřebuji zmazat v jednom adresáři všechny soubory
Kód: Vybrat vše
$files = scandir($dir);
opendir($dir);
$files = array_pop(array_pop($files));
echo $files;
foreach ($files as $file) {
if (!is_dir($file)) {
unlink($file);
} else {
@rmdir($file) or removeDir($file);
}
closedir($dir);
}
proč mne to nefunguje ?

díky
Napsal: 17 pro 2014, 15:17
od petus
máš nastavený práva souboru?

Napsal: 17 pro 2014, 16:02
od markoni
Na ty práva souborů jsem bral v potaz práva jsou nastavena na 644 ale když dám absolutní cestu tak ten soubor se smaže práva nepráva , Já potřebuji dát do kronu řekneme jednou za den skript který smaže v adresáři všechny soubory díky
Napsal: 18 pro 2014, 22:27
od kasa
Proč to nejde v PHP, nevím, já to samé dělám Cronem tímhle shellovým příkazem (cesta je tam na tvrdo): rm -f -R /cesta/*
Napsal: 19 pro 2014, 10:38
od markoni
Vyřešeno tak to vypadá byl jsem na tento kód upozorněn po malé upravě funguje kdyby to někdo potřeboval tak je to tady díky
Kód: Vybrat vše
<?php
$dirPath = "adresář ve kterém se mají smazat všechny soubory";
if (! is_dir($dirPath)) {
throw new InvalidArgumentException("$dirPath must be a directory");
}
if (substr($dirPath, strlen($dirPath) - 1, 1) != '/') {
$dirPath .= '/';
}
$files = glob($dirPath . '*', GLOB_MARK);
foreach ($files as $file) {
if (is_dir($file)) {
self::deleteDir($file);
} else {
unlink($file);
}
}
?>
Napsal: 19 pro 2014, 10:46
od rnbw
kasa píše:Proč to nejde v PHP, nevím, já to samé dělám Cronem tímhle shellovým příkazem (cesta je tam na tvrdo): rm -f -R /cesta/*
Na spustanie z cronu je toto lepsie, netreba na to PHP. Ale nezmaze to subory zacinajuce bodkou (skryte).