Elisseii
@Elisseii
Пишу музыку и код.

Как получить названия всех папок (только папок) в array?

PHP функция scandir по умолчанию выдает список всех файлов в заданном каталоге, но мне нужны только названия папок.
Куда что прописать?
И ещё интересно, есть ли у laravel какие-то методы работы с папками или файлами, чтобы код был ещё по короче :)
  • Вопрос задан
  • 499 просмотров
Пригласить эксперта
Ответы на вопрос 3
foreach (new \DirectoryIterator('your_dir') as $iNode) {
     if ($iNode->isDot() || !$iNode->isDir()) continue;
            
     echo $iNode->getFilename() . PHP_EOL;
}
Ответ написан
Комментировать
SerafimArts
@SerafimArts
Senior Notepad Reader
Вариант 1:

use Symfony\Component\Finder\Finder;

\collect((new Finder())->dir()->in($directory))->map->getFilename()->toArray();


Вариант 2:
\Storage::allDirectories($directory); 
// Тут надо смотреть что возвращает, не помню, вроде полные пути, так что basename для каждого достаточно применить.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы