Как извлечь имя папки из MySQL URL и удалить его со всем содержимым? - PullRequest
0 голосов
/ 15 июня 2019

Как получить папку с изображениями -> имя подпапки -> из MySQL URL:

images/5d049d4ac96e6/image.jpg

и удалите его со всем содержимым. На данный момент код удалить image.jpg файл только из подкаталога изображения, но мне нужно также удалить subfolder /5d049d4ac96e6/

$stmt = $db->prepare('SELECT postImage FROM blog_posts_seo WHERE postID = :postID') ;
    $stmt->execute(array(':postID' => $_GET['delpost']));
    while($row = $stmt->fetch()){
    $delImage =  dirname(__FILE__, 2) . '/'.$row['postImage'];
    unlink($delImage);
    //rmdir(?????);
    }

Как извлечь эту часть из mysql url: /5d049d4ac96e6/

1 Ответ

0 голосов
/ 15 июня 2019

Перед удалением папки удалите все ее файлы и папки. Вот функция для этого используйте его в while loop

function rrmdir($dir) {
  if (is_dir($dir)) {
    $objects = scandir($dir);
    foreach ($objects as $object) {
      if ($object != "." && $object != "..") {
        if (filetype($dir."/".$object) == "dir") 
           rrmdir($dir."/".$object); 
        else unlink   ($dir."/".$object);
      }
    }
    reset($objects);
    rmdir($dir);
  }
}

В вашем цикле while

while($row = $stmt->fetch()){
    $dir = dirname($row['postImage']).'/';
    rrmdir($dir);
}
...