Hướng dẫn php get folders in directory - php get các thư mục trong thư mục

Làm thế nào tôi có thể nhận được tất cả các thư mục phụ của một thư mục nhất định mà không cần tệp, ________ 18 [thư mục hiện tại] hoặc ________ 19 [thư mục cha] và sau đó sử dụng từng thư mục trong một hàm?

Mohammed h

6.66916 Huy hiệu vàng77 Huy hiệu bạc125 Huy hiệu Đồng16 gold badges77 silver badges125 bronze badges

Đã hỏi ngày 26 tháng 3 năm 2010 lúc 14:55Mar 26, 2010 at 14:55

Lựa chọn 1:

Bạn có thể sử dụng

$dir = new DirectoryIterator[$path];
foreach [$dir as $fileinfo] {
    if [$fileinfo->isDir[] && !$fileinfo->isDot[]] {
        echo $fileinfo->getFilename[].'
'; } }
0 với tùy chọn
$dir = new DirectoryIterator[$path];
foreach [$dir as $fileinfo] {
    if [$fileinfo->isDir[] && !$fileinfo->isDot[]] {
        echo $fileinfo->getFilename[].'
'; } }
1.

Lựa chọn 2:

Một tùy chọn khác là sử dụng

$dir = new DirectoryIterator[$path];
foreach [$dir as $fileinfo] {
    if [$fileinfo->isDir[] && !$fileinfo->isDot[]] {
        echo $fileinfo->getFilename[].'
'; } }
2 để lọc danh sách các thư mục. Tuy nhiên, lưu ý rằng mã bên dưới sẽ bỏ qua các thư mục hợp lệ với các khoảng thời gian trong tên của họ như
$dir = new DirectoryIterator[$path];
foreach [$dir as $fileinfo] {
    if [$fileinfo->isDir[] && !$fileinfo->isDot[]] {
        echo $fileinfo->getFilename[].'
'; } }
3.

$dirs = array_filter[glob['*'], 'is_dir'];
print_r[$dirs];

Pikamander2

6.3933 Huy hiệu vàng42 Huy hiệu bạc63 Huy hiệu Đồng3 gold badges42 silver badges63 bronze badges

Đã trả lời ngày 26 tháng 3 năm 2010 lúc 14:58Mar 26, 2010 at 14:58

ghostdog74ghostdog74ghostdog74

314K55 Huy hiệu vàng252 Huy hiệu bạc339 Huy hiệu Đồng55 gold badges252 silver badges339 bronze badges

7

Đây là cách bạn chỉ có thể truy xuất các thư mục với Quả cầu:

$directories = glob[$somePath . '/*' , GLOB_ONLYDIR];

Đã trả lời ngày 9 tháng 6 năm 2010 lúc 13:44Jun 9, 2010 at 13:44

COREUSCOREUSCoreus

4.9973 Huy hiệu vàng34 Huy hiệu bạc46 Huy hiệu đồng3 gold badges34 silver badges46 bronze badges

4

Lớp thư mục SPL cung cấp một giao diện đơn giản để xem nội dung của các thư mục hệ thống tập tin.

$dir = new DirectoryIterator[$path];
foreach [$dir as $fileinfo] {
    if [$fileinfo->isDir[] && !$fileinfo->isDot[]] {
        echo $fileinfo->getFilename[].'
'; } }

Đã trả lời ngày 4 tháng 10 năm 2013 lúc 10:14Oct 4, 2013 at 10:14

Stlocstlocstloc

1.4581 Huy hiệu vàng16 Huy hiệu bạc26 Huy hiệu đồng1 gold badge16 silver badges26 bronze badges

0

Gần như giống như trong câu hỏi trước của bạn:

$iterator = new RecursiveIteratorIterator[
                new RecursiveDirectoryIterator[$yourStartingPath], 
            RecursiveIteratorIterator::SELF_FIRST];

foreach[$iterator as $file] {
    if[$file->isDir[]] {
        echo strtoupper[$file->getRealpath[]], PHP_EOL;
    }
}

Thay thế

$dir = new DirectoryIterator[$path];
foreach [$dir as $fileinfo] {
    if [$fileinfo->isDir[] && !$fileinfo->isDot[]] {
        echo $fileinfo->getFilename[].'
'; } }
4 bằng chức năng mong muốn của bạn.

Đã trả lời ngày 26 tháng 3 năm 2010 lúc 15:11Mar 26, 2010 at 15:11

GordongordonGordon

308K72 Huy hiệu vàng527 Huy hiệu bạc552 Huy hiệu đồng72 gold badges527 silver badges552 bronze badges

3

Thử mã này:

Bài Viết Liên Quan

Chủ Đề