salve dovrei rimuovere una cartella con il suo contenuto, procedendo con “rmdir(getcwd().’/images’)”, elimino una cartella vuota…,io vorrei eliminare il contenuto e cartella,Ho un actionDelete per l’eliminazione dei record e al suo interno dovrei implementare ciò, sul mio controller ho questo:
public function actionDelete($id)
{
$model=$this->loadModel($id);
//rimuovi cartella..in questo caso è vuota..
rmdir(getcwd().'/images');
$img_add = new GalleryImages();
if ($img_add->gallery_id = $model->id) {
$this->loadModel($id)->delete();
$img_add->deleteAllByAttributes(array(),'`gallery_id` = :delete',array(
':delete'=>$model->id,
));
}
//@todo rimuove anche gli elementi dalla directory
// if AJAX request (triggered by deletion via admin grid view), we should not redirect the browser
if(!isset($_GET['ajax']))
$this->redirect(isset($_POST['returnUrl']) ? $_POST['returnUrl'] : array('admin'));
}
girando sul web ho trovato questa funzione che se la lancio da uno script php normale(esterno al framework) fa il suo lavoro
<?php
function recursiveRemove($dir) {
$structure = glob(rtrim($dir, "/").'/*');
if (is_array($structure)) {
foreach($structure as $file) {
if (is_dir($file)) recursiveRemove($file);
elseif (is_file($file)) unlink($file);
}
}
rmdir($dir);
}
recursiveRemove("./image/image2/");
?>
non so come implementarla…,devo metterla sul model?