Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

295

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi tự hỏi, cách dễ nhất để xóa một thư mục với tất cả các tệp của nó trong đó là gì?

Tuy nhiên, tôi đang sử dụng

rmdir($dirname);
5 để xóa một thư mục, nếu có các tệp bên trong nó, tôi chỉ đơn giản là không thể xóa nó.

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

Nick

4.2642 Huy hiệu vàng23 Huy hiệu bạc37 Huy hiệu Đồng2 gold badges23 silver badges37 bronze badges

hỏi ngày 28 tháng 7 năm 2010 lúc 3:41Jul 28, 2010 at 3:41

4

Có ít nhất hai tùy chọn hiện nay.

  1. Trước khi xóa thư mục, hãy xóa tất cả các tệp và thư mục của nó (và điều này có nghĩa là đệ quy!). Đây là một ví dụ:

    public static function deleteDir($dirPath) {
        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);
            }
        }
        rmdir($dirPath);
    }
    
  2. Và nếu bạn đang sử dụng 5.2+, bạn có thể sử dụng một đệ quy để thực hiện mà không cần tự thực hiện đệ quy:

    $dir = 'samples' . DIRECTORY_SEPARATOR . 'sampledirtree';
    $it = new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS);
    $files = new RecursiveIteratorIterator($it,
                 RecursiveIteratorIterator::CHILD_FIRST);
    foreach($files as $file) {
        if ($file->isDir()){
            rmdir($file->getRealPath());
        } else {
            unlink($file->getRealPath());
        }
    }
    rmdir($dir);
    

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

JLA

3.1613 huy hiệu vàng27 Huy hiệu bạc40 Huy hiệu đồng3 gold badges27 silver badges40 bronze badges

Đã trả lời ngày 28 tháng 7 năm 2010 lúc 3:51Jul 28, 2010 at 3:51

Alcuadradoalcuadradoalcuadrado

8.2003 huy hiệu vàng24 Huy hiệu bạc25 Huy hiệu đồng3 gold badges24 silver badges25 bronze badges

19

Tôi thường sử dụng điều này để xóa tất cả các tệp trong một thư mục:

array_map('unlink', glob("$dirname/*.*"));

Và sau đó bạn có thể làm

rmdir($dirname);

Đã trả lời ngày 17 tháng 10 năm 2014 lúc 11:24Oct 17, 2014 at 11:24

user3033886user3033886user3033886

2.6951 Huy hiệu vàng10 Huy hiệu bạc7 Huy hiệu đồng1 gold badge10 silver badges7 bronze badges

5

Cách dễ nhất để xóa một thư mục với tất cả các tệp của nó trong đó là gì?

system("rm -rf ".escapeshellarg($dir));

Danronmoon

3.7045 huy hiệu vàng33 Huy hiệu bạc56 Huy hiệu đồng5 gold badges33 silver badges56 bronze badges

Đã trả lời ngày 28 tháng 7 năm 2010 lúc 4:03Jul 28, 2010 at 4:03

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

Ý thức chung thông thường của bạnYour Common Sense

156K39 Huy hiệu vàng209 Huy hiệu bạc332 Huy hiệu Đồng39 gold badges209 silver badges332 bronze badges

14

Chức năng ngắn thực hiện công việc:

function deleteDir($path) {
    return is_file($path) ?
            @unlink($path) :
            array_map(__FUNCTION__, glob($path.'/*')) == @rmdir($path);
}

Tôi sử dụng nó trong một lớp sử dụng như thế này:

class Utils {
    public static function deleteDir($path) {
        $class_func = array(__CLASS__, __FUNCTION__);
        return is_file($path) ?
                @unlink($path) :
                array_map($class_func, glob($path.'/*')) == @rmdir($path);
    }
}

Với sức mạnh lớn là trách nhiệm lớn: Khi bạn gọi hàm này với giá trị trống, nó sẽ xóa các tệp bắt đầu từ root (

rmdir($dirname);
6). Là một biện pháp bảo vệ, bạn có thể kiểm tra xem đường dẫn có trống không:: When you call this function with an empty value, it will delete files starting in root (
rmdir($dirname);
6). As a safeguard you can check if path is empty:

function deleteDir($path) {
    if (empty($path)) { 
        return false;
    }
    return is_file($path) ?
            @unlink($path) :
            array_map(__FUNCTION__, glob($path.'/*')) == @rmdir($path);
}

Đã trả lời ngày 31 tháng 12 năm 2011 lúc 13:12Dec 31, 2011 at 13:12

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

BlaiseBlaiseBlaise

12.6K9 Huy hiệu vàng67 Huy hiệu bạc96 Huy hiệu Đồng9 gold badges67 silver badges96 bronze badges

7

Như đã thấy trong hầu hết các bình luận được bình chọn trên trang hướng dẫn sử dụng PHP về

rmdir($dirname);
7 (xem http://php.net/manual/es/function.rmdir.php), hàm
rmdir($dirname);
8 không trả về các tệp ẩn.
rmdir($dirname);
9 được cung cấp như một giải pháp thay thế giải quyết vấn đề đó.

Thuật toán được mô tả ở đó (hoạt động giống như một bùa trong trường hợp của tôi) là:

<?php 
    function delTree($dir)
    { 
        $files = array_diff(scandir($dir), array('.', '..')); 

        foreach ($files as $file) { 
            (is_dir("$dir/$file")) ? delTree("$dir/$file") : unlink("$dir/$file"); 
        }

        return rmdir($dir); 
    } 
?>

Đã trả lời ngày 25 tháng 1 năm 2013 lúc 23:01Jan 25, 2013 at 23:01

Latorregerman ĐứcGerman Latorre

9.44813 Huy hiệu vàng45 Huy hiệu bạc59 Huy hiệu đồng13 gold badges45 silver badges59 bronze badges

4

Bạn có thể sử dụng hệ thống tập tin của Symfony (mã):

// composer require symfony/filesystem

use Symfony\Component\Filesystem\Filesystem;

(new Filesystem)->remove($dir);

Tuy nhiên, tôi không thể xóa một số cấu trúc thư mục phức tạp với phương pháp này, vì vậy trước tiên bạn nên thử nó để đảm bảo nó hoạt động tốt.


Tôi có thể xóa cấu trúc thư mục đã nói bằng cách sử dụng triển khai cụ thể của Windows:

$dir = 'samples' . DIRECTORY_SEPARATOR . 'sampledirtree';
$it = new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($it,
             RecursiveIteratorIterator::CHILD_FIRST);
foreach($files as $file) {
    if ($file->isDir()){
        rmdir($file->getRealPath());
    } else {
        unlink($file->getRealPath());
    }
}
rmdir($dir);
0


Và chỉ vì sự hoàn chỉnh, đây là một mã cũ của tôi:

$dir = 'samples' . DIRECTORY_SEPARATOR . 'sampledirtree';
$it = new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($it,
             RecursiveIteratorIterator::CHILD_FIRST);
foreach($files as $file) {
    if ($file->isDir()){
        rmdir($file->getRealPath());
    } else {
        unlink($file->getRealPath());
    }
}
rmdir($dir);
1

Đã trả lời ngày 17 tháng 5 năm 2015 lúc 21:09May 17, 2015 at 21:09

GRAS Doublegras DoubleGras Double

15.3k7 Huy hiệu vàng54 Huy hiệu bạc51 Huy hiệu Đồng7 gold badges54 silver badges51 bronze badges

2

Đây là phiên bản ngắn hơn hoạt động tốt với tôi

$dir = 'samples' . DIRECTORY_SEPARATOR . 'sampledirtree';
$it = new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($it,
             RecursiveIteratorIterator::CHILD_FIRST);
foreach($files as $file) {
    if ($file->isDir()){
        rmdir($file->getRealPath());
    } else {
        unlink($file->getRealPath());
    }
}
rmdir($dir);
2

user6972

8111 Huy hiệu vàng13 Huy hiệu bạc31 Huy hiệu đồng1 gold badge13 silver badges31 bronze badges

Đã trả lời ngày 21 tháng 11 năm 2012 lúc 20:49Nov 21, 2012 at 20:49

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

PlaynoxPlayNoxPlaynox

1.01914 Huy hiệu bạc8 Huy hiệu đồng14 silver badges8 bronze badges

Bạn có thể thử như sau:

$dir = 'samples' . DIRECTORY_SEPARATOR . 'sampledirtree';
$it = new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($it,
             RecursiveIteratorIterator::CHILD_FIRST);
foreach($files as $file) {
    if ($file->isDir()){
        rmdir($file->getRealPath());
    } else {
        unlink($file->getRealPath());
    }
}
rmdir($dir);
3

Đã trả lời ngày 15 tháng 11 năm 2018 lúc 5:54Nov 15, 2018 at 5:54

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

Bablu Ahmedbablu AhmedBablu Ahmed

3.9344 Huy hiệu vàng42 Huy hiệu bạc60 Huy hiệu Đồng4 gold badges42 silver badges60 bronze badges

1

Tôi không thể tin rằng có hơn 30 câu trả lời cho việc này. Xóa đệ quy một thư mục trong PHP có thể mất vài phút tùy thuộc vào độ sâu của thư mục và số lượng tệp trong đó! Bạn có thể làm điều này với một dòng mã ...

system("rm -rf ".escapeshellarg($dir));
0

Nếu bạn quan tâm đến việc xóa toàn bộ hệ thống tập tin, hãy đảm bảo đường dẫn

system("rm -rf ".escapeshellarg($dir));
1 của bạn chính xác là những gì bạn muốn đầu tiên. Không bao giờ cho phép người dùng nhập một cái gì đó có thể xóa trực tiếp các tệp mà không cần xác thực đầu tiên vào đầu vào. Đó là thực hành mã hóa thiết yếu.

Đã trả lời ngày 13 tháng 4 năm 2021 lúc 11:27Apr 13, 2021 at 11:27

WebtigerswebtigerWebTigers

Huy hiệu đồng bạc 1971 Silver81 silver badge8 bronze badges

4

Cái này làm việc cho tôi:

$dir = 'samples' . DIRECTORY_SEPARATOR . 'sampledirtree';
$it = new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($it,
             RecursiveIteratorIterator::CHILD_FIRST);
foreach($files as $file) {
    if ($file->isDir()){
        rmdir($file->getRealPath());
    } else {
        unlink($file->getRealPath());
    }
}
rmdir($dir);
4

Đã trả lời ngày 23 tháng 3 năm 2018 lúc 7:55Mar 23, 2018 at 7:55

0

Ở đây bạn có một đệ quy đơn giản và đơn giản để xóa tất cả các tệp trong thư mục nguồn bao gồm thư mục đó:

$dir = 'samples' . DIRECTORY_SEPARATOR . 'sampledirtree';
$it = new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($it,
             RecursiveIteratorIterator::CHILD_FIRST);
foreach($files as $file) {
    if ($file->isDir()){
        rmdir($file->getRealPath());
    } else {
        unlink($file->getRealPath());
    }
}
rmdir($dir);
5

Chức năng dựa trên đệ quy được thực hiện để sao chép thư mục. Bạn có thể tìm thấy chức năng đó ở đây: Sao chép toàn bộ nội dung của thư mục sang một thư mục khác bằng cách sử dụng PHP

Đã trả lời ngày 23 tháng 2 năm 2013 lúc 14:03Feb 23, 2013 at 14:03

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

TommztommzTommz

3.3237 Huy hiệu vàng31 Huy hiệu bạc44 Huy hiệu đồng7 gold badges31 silver badges44 bronze badges

0

Chức năng GLOB không trả về các tệp ẩn, do đó scandir có thể hữu ích hơn, khi cố gắng xóa một cây đệ quy.

$dir = 'samples' . DIRECTORY_SEPARATOR . 'sampledirtree';
$it = new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($it,
             RecursiveIteratorIterator::CHILD_FIRST);
foreach($files as $file) {
    if ($file->isDir()){
        rmdir($file->getRealPath());
    } else {
        unlink($file->getRealPath());
    }
}
rmdir($dir);
6

Đã trả lời ngày 4 tháng 1 năm 2017 lúc 17:54Jan 4, 2017 at 17:54

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

Nandlejackcandlejackcandlejack

1.1692 Huy hiệu vàng21 Huy hiệu bạc 50 Huy hiệu Đồng2 gold badges21 silver badges50 bronze badges

Ví dụ cho máy chủ Linux:

system("rm -rf ".escapeshellarg($dir));
2

Đã trả lời ngày 12 tháng 7 năm 2017 lúc 15:00Jul 12, 2017 at 15:00

realmag777realmag777realmag777

1.9801 Huy hiệu vàng23 Huy hiệu bạc20 Huy hiệu Đồng1 gold badge23 silver badges20 bronze badges

1

Litle bit sửa đổi mã của Alcuadrado -

system("rm -rf ".escapeshellarg($dir));
3 không thấy các tệp có tên từ các điểm như
system("rm -rf ".escapeshellarg($dir));
4 vì vậy tôi sử dụng scandir và script tự xóa - kiểm tra
system("rm -rf ".escapeshellarg($dir));
5.

$dir = 'samples' . DIRECTORY_SEPARATOR . 'sampledirtree';
$it = new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($it,
             RecursiveIteratorIterator::CHILD_FIRST);
foreach($files as $file) {
    if ($file->isDir()){
        rmdir($file->getRealPath());
    } else {
        unlink($file->getRealPath());
    }
}
rmdir($dir);
7

Đã trả lời ngày 30 tháng 12 năm 2013 lúc 22:51Dec 30, 2013 at 22:51

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

Giải pháp tốt nhất cho tôi

$dir = 'samples' . DIRECTORY_SEPARATOR . 'sampledirtree';
$it = new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($it,
             RecursiveIteratorIterator::CHILD_FIRST);
foreach($files as $file) {
    if ($file->isDir()){
        rmdir($file->getRealPath());
    } else {
        unlink($file->getRealPath());
    }
}
rmdir($dir);
8

code:

$dir = 'samples' . DIRECTORY_SEPARATOR . 'sampledirtree';
$it = new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS);
$files = new RecursiveIteratorIterator($it,
             RecursiveIteratorIterator::CHILD_FIRST);
foreach($files as $file) {
    if ($file->isDir()){
        rmdir($file->getRealPath());
    } else {
        unlink($file->getRealPath());
    }
}
rmdir($dir);
9

P.S. NHỚ! Không chuyển các giá trị trống cho bất kỳ chức năng xóa thư mục nào !!! (Sao lưu chúng luôn luôn, nếu không một ngày nào đó bạn có thể bị thảm họa !!)
dont pass EMPTY VALUES to any Directory deleting functions!!! (backup them always, otherwise one day you might get DISASTER!!)

Đã trả lời ngày 26 tháng 11 năm 2014 lúc 9:10Nov 26, 2014 at 9:10

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

T.ToduaT.ToduaT.Todua

50.3K19 Huy hiệu vàng218 Huy hiệu bạc216 Huy hiệu đồng19 gold badges218 silver badges216 bronze badges

Cái này thì sao:

array_map('unlink', glob("$dirname/*.*"));
0

Đã trả lời ngày 13 tháng 10 năm 2015 lúc 10:34Oct 13, 2015 at 10:34

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

Adrianadrianadrian

1113 Huy hiệu bạc10 Huy hiệu đồng3 silver badges10 bronze badges

Tôi muốn mở rộng câu trả lời của @alcuadrado với nhận xét của @vijit để xử lý các liên kết symlink. Thứ nhất, sử dụng getRealpath (). Nhưng sau đó, nếu bạn có bất kỳ liên kết symlink nào là các thư mục, nó sẽ thất bại vì nó sẽ cố gắng và gọi RMDIR trên một liên kết - vì vậy bạn cần kiểm tra thêm.

array_map('unlink', glob("$dirname/*.*"));
1

Đã trả lời ngày 6 tháng 6 năm 2017 lúc 14:01Jun 6, 2017 at 14:01

1

Tôi thích điều này vì nó vẫn trả về đúng khi nó thành công và sai khi nó thất bại, và nó cũng ngăn chặn một lỗi trong đó một đường dẫn trống có thể thử và xóa mọi thứ khỏi '/*' !!:

array_map('unlink', glob("$dirname/*.*"));
2

Đã trả lời ngày 26 tháng 7 năm 2012 lúc 1:49Jul 26, 2012 at 1:49

Matt Connollymatt ConnollyMatt Connolly

9.6682 Huy hiệu vàng62 Huy hiệu bạc61 Huy hiệu Đồng2 gold badges62 silver badges61 bronze badges

0

Sử dụng thư mục

array_map('unlink', glob("$dirname/*.*"));
3

Đã trả lời ngày 16 tháng 2 năm 2018 lúc 14:39Feb 16, 2018 at 14:39

Bạn có thể thử dòng mã 12 đơn giản này để xóa thư mục hoặc tệp thư mục ... mã hóa hạnh phúc ...;) :) :)

array_map('unlink', glob("$dirname/*.*"));
4

Đã trả lời ngày 18 tháng 7 năm 2019 lúc 6:42Jul 18, 2019 at 6:42

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

Một cái gì đó như thế này?

array_map('unlink', glob("$dirname/*.*"));
5

Đã trả lời ngày 30 tháng 1 năm 2013 lúc 13:13Jan 30, 2013 at 13:13

K-GunK-GunK-Gun

Huy hiệu vàng 11K254 Huy hiệu bạc57 Huy hiệu đồng2 gold badges54 silver badges57 bronze badges

Xóa tất cả các tệp trong thư mục

system("rm -rf ".escapeshellarg($dir));
6 Xóa tất cả.*-Tệp trong thư mục (không có: "." Và "..")
system("rm -rf ".escapeshellarg($dir));
7 Bây giờ hãy xóa chính thư mục
system("rm -rf ".escapeshellarg($dir));
8
system("rm -rf ".escapeshellarg($dir));
6
Delete all .*-Files in Folder (without: "." and "..")
system("rm -rf ".escapeshellarg($dir));
7
Now delete the Folder itself
system("rm -rf ".escapeshellarg($dir));
8

Đã trả lời ngày 7 tháng 7 năm 2015 lúc 7:34Jul 7, 2015 at 7:34

2 xu để thêm vào câu trả lời ở trên, đó là btw tuyệt vời

Sau khi chức năng Quả cầu (hoặc tương tự) của bạn đã quét/đọc thư mục, thêm một điều kiện để kiểm tra phản hồi không trống hoặc cảnh báo

system("rm -rf ".escapeshellarg($dir));
9 sẽ được ném. Vì thế...

array_map('unlink', glob("$dirname/*.*"));
6

Hàm đầy đủ của tôi (như một phương thức đối tượng):

array_map('unlink', glob("$dirname/*.*"));
7

Đã trả lời ngày 29 tháng 11 năm 2016 lúc 14:58Nov 29, 2016 at 14:58

Đây là giải pháp hoạt động hoàn hảo:

array_map('unlink', glob("$dirname/*.*"));
8

Đã trả lời ngày 20 tháng 12 năm 2017 lúc 6:48Dec 20, 2017 at 6:48

TariktarikTarik

4.03237 Huy hiệu bạc33 Huy hiệu đồng37 silver badges33 bronze badges

Cái này thì sao?

array_map('unlink', glob("$dirname/*.*"));
9

Đổi mới: https://paulund.co.uk/php-delete-directory-and-files-in-directory

Đã trả lời ngày 25 tháng 12 năm 2017 lúc 9:28Dec 25, 2017 at 9:28

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

Bạn có thể sao chép những người trợ giúp yii

$ Thư mục (chuỗi) - Để bị xóa đệ quy.

Tùy chọn $ (mảng) - để loại bỏ thư mục. Các tùy chọn hợp lệ là: Traversesymlinks: Boolean, cho dù các liên kết với các thư mục cũng nên được đi qua. Mặc định là

function deleteDir($path) {
    return is_file($path) ?
            @unlink($path) :
            array_map(__FUNCTION__, glob($path.'/*')) == @rmdir($path);
}
0, có nghĩa là nội dung của thư mục symlinked sẽ không bị xóa. Chỉ có SymLink sẽ bị xóa trong trường hợp mặc định đó.

rmdir($dirname);
0

Đã trả lời ngày 6 tháng 8 năm 2019 lúc 12:46Aug 6, 2019 at 12:46

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

rmdir($dirname);
1

Bạn đã thử mã obove từ php.net

Làm việc cho tôi tốt

Đã trả lời ngày 3 tháng 4 năm 2013 lúc 13:06Apr 3, 2013 at 13:06

GauranggaurangGaurang

1.91818 Huy hiệu bạc12 Huy hiệu đồng18 silver badges12 bronze badges

Cho cửa sổ:

rmdir($dirname);
2

Đã trả lời ngày 1 tháng 11 năm 2013 lúc 16:59Nov 1, 2013 at 16:59

MylomyloMylo

651 Huy hiệu vàng1 Huy hiệu bạc6 Huy hiệu đồng1 gold badge1 silver badge6 bronze badges

Giống như giải pháp của Playnox, nhưng với thư mục tích hợp thanh lịch:

rmdir($dirname);
3

Đã trả lời ngày 21 tháng 10 năm 2014 lúc 11:20Oct 21, 2014 at 11:20

Hướng dẫn php delete folder and all files - php xóa thư mục và tất cả các tệp

Tôi không nhớ nơi tôi đã sao chép chức năng này, nhưng có vẻ như nó không được liệt kê và nó đang hoạt động cho tôi

rmdir($dirname);
4

Đã trả lời ngày 12 tháng 8 năm 2015 lúc 13:39Aug 12, 2015 at 13:39

Davdavdav

8.61114 Huy hiệu vàng75 Huy hiệu bạc137 Huy hiệu đồng14 gold badges75 silver badges137 bronze badges

Làm cách nào để xóa tất cả các tệp trong một thư mục trong PHP?

Xác thực tệp trong khi kiểm tra xem thư mục tệp có dấu chấm hay không. Sử dụng tham chiếu phương thức GetPathName, xóa tệp bằng phương thức Unlink () ...
Tạo danh sách các tệp bằng phương thức glob () ..
Lặp lại danh sách các tệp ..
Kiểm tra xem tên của các tệp có hợp lệ không ..
Xóa tệp bằng phương thức Unlink () ..

Làm thế nào xóa một thư mục có tệp?

Để xóa một thư mục và tất cả các nội dung của nó, bao gồm mọi thư mục con và tệp, hãy sử dụng lệnh RM với tùy chọn đệ quy, -r. Các thư mục được xóa bằng lệnh RMDIR không thể được phục hồi, các thư mục cũng không thể bị xóa nội dung của chúng bằng lệnh RM -R.use the rm command with the recursive option, -r . Directories that are removed with the rmdir command cannot be recovered, nor can directories and their contents removed with the rm -r command.

Làm cách nào để xóa một tệp trong PHP?

Hàm bỏ liên kết () xóa một tệp.unlink() function deletes a file.

Làm thế nào có thể xóa hình ảnh khỏi cơ sở dữ liệu và thư mục trong PHP?

Bạn có thể sử dụng hàm Unlink () để xóa hình ảnh khỏi thư mục.Nếu hình ảnh của bạn là cùng một thư mục của tập lệnh và tên tệp nằm trong biến $ id, bạn có thể xóa nó bằng cách sử dụng Unlink ($ id).Ở đây đường dẫn/ là vị trí của thư mục trong đó hình ảnh được lưu trữ.Lưu câu trả lời này.use unlink() function to delete the image from directory. If you image is the same directory of script and filename is in variable $id you can delete it by using unlink($id) . Here path/ is the location of the directory in which image is stored. Save this answer.