Hướng dẫn php list folders in directory - danh sách php 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.68916 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.5213 Huy hiệu vàng43 Huy hiệu bạc65 Huy hiệu Đồng3 gold badges43 silver badges65 bronze badges

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

ghostdog74ghostdog74ghostdog74

316K56 Huy hiệu vàng254 Huy hiệu bạc341 Huy hiệu Đồng56 gold badges254 silver badges341 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

5.0673 Huy hiệu vàng34 Huy hiệu bạc48 Huy hiệu đồng3 gold badges34 silver badges48 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.4681 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

309K72 Huy hiệu vàng528 Huy hiệu bạc553 Huy hiệu Đồng72 gold badges528 silver badges553 bronze badges

3

Thử mã này:

Bài Viết Liên Quan

Chủ Đề