note 104824 added to function.readdir

From: Date: Sat, 09 Jul 2011 10:34:26 +0000
Subject: note 104824 added to function.readdir
Groups: php.notes 
Request: Send a blank email to php-notes+get-181373@lists.php.net to get a copy of this message
Get all files on recursive directories in single array. /* * mrlemonade ~ */ function getFilesFromDir($dir) { $files = array(); if ($handle = opendir($dir)) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { if(is_dir($dir.'/'.$file)) { $dir2 = $dir.'/'.$file; $files[] = getFilesFromDir($dir2); } else { $files[] = $dir.'/'.$file; } } } closedir($handle); } return array_flat($files); } function array_flat($array) { foreach($array as $a) { if(is_array($a)) { $tmp = array_merge($tmp, array_flat($a)); } else { $tmp[] = $a; } } return $tmp; } // Usage $dir = '/data'; $foo = getFilesFromDir($dir); print_r($foo); ---- Server IP: 202.182.182.183 Probable Submitter: 119.110.69.78 ---- Manual Page -- http://www.php.net/manual/en/function.readdir.php Edit -- https://master.php.net/note/edit/104824 Del: integrated -- https://master.php.net/note/delete/104824/integrated Del: useless -- https://master.php.net/note/delete/104824/useless Del: bad code -- https://master.php.net/note/delete/104824/bad+code Del: spam -- https://master.php.net/note/delete/104824/spam Del: non-english -- https://master.php.net/note/delete/104824/non-english Del: in docs -- https://master.php.net/note/delete/104824/in+docs Del: other reasons-- https://master.php.net/note/delete/104824 Reject -- https://master.php.net/note/reject/104824 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#181373) next »