Back
Syntax
Study
Editor
Mode:
HTML
CSS
JavaScript
PHP
Reset
Run »
HTML / CSS / JS
<?php $dir = '/var/data'; // Simple listing with scandir $entries = scandir($dir); foreach ($entries as $entry) { if ($entry === '.' || $entry === '..') continue; $fullPath = $dir . DIRECTORY_SEPARATOR . $entry; echo (is_dir($fullPath) ? '[DIR] ' : '[FILE]') . " $entry "; } // DirectoryIterator (SPL) $iterator = new DirectoryIterator($dir); foreach ($iterator as $item) { if ($item->isDot()) continue; printf("%-6s %s (%d bytes) ", $item->getType(), $item->getFilename(), $item->isFile() ? $item->getSize() : 0 ); } // Recursive listing with RecursiveDirectoryIterator $rit = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($dir, FilesystemIterator::SKIP_DOTS), RecursiveIteratorIterator::SELF_FIRST ); foreach ($rit as $path => $info) { $indent = str_repeat(' ', $rit->getDepth()); echo $indent . $info->getFilename() . " "; } // Glob — find files matching a pattern $phpFiles = glob($dir . '/*.php'); $images = glob($dir . '/images/*.{jpg,png,gif}', GLOB_BRACE); foreach ($phpFiles as $file) { echo basename($file) . " "; }
Result
Open