note 119231 added to function.glob

From: Date: Sat, 23 Apr 2016 11:50:25 +0000
Subject: note 119231 added to function.glob
Groups: php.notes 
Request: Send a blank email to php-notes+get-205307@lists.php.net to get a copy of this message
I created a rglob function to support a '/**/' wildcard. You can even set the order to post-order or pre-order traversal. <?php function rglob ($pattern, $flags = 0, $traversePostOrder = false) { // Keep away the hassles of the rest if we don't use the wildcard anyway if (strpos($pattern, '/**/') === false) { return glob($pattern, $flags); } $patternParts = explode('/**/', $pattern); // Get sub dirs $dirs = glob(array_shift($patternParts) . '/*', GLOB_ONLYDIR | GLOB_NOSORT); // Get files for current dir $files = glob($pattern, $flags); foreach ($dirs as $dir) { $subDirContent = rglob($dir . '/**/' . implode('/**/', $patternParts), $flags, $traversePostOrder); if (!$traversePostOrder) { $files = array_merge($files, $subDirContent); } else { $files = array_merge($subDirContent, $files); } } return $files; }; ?> ---- Server IP: 72.52.91.14 Probable Submitter: 79.237.24.28 ---- Manual Page -- http://php.net/manual/en/function.glob.php Edit -- https://master.php.net/note/edit/119231 Del: integrated -- https://master.php.net/note/delete/119231/integrated Del: useless -- https://master.php.net/note/delete/119231/useless Del: bad code -- https://master.php.net/note/delete/119231/bad+code Del: spam -- https://master.php.net/note/delete/119231/spam Del: non-english -- https://master.php.net/note/delete/119231/non-english Del: in docs -- https://master.php.net/note/delete/119231/in+docs Del: other reasons-- https://master.php.net/note/delete/119231 Reject -- https://master.php.net/note/reject/119231 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#205307) next »