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

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

PHP функция scandir по умолчанию выдает список всех файлов в заданном каталоге, но мне нужны только названия папок.
Куда что прописать?
И ещё интересно, есть ли у laravel какие-то методы работы с папками или файлами, чтобы код был ещё по короче :)
  • Вопрос задан
  • 446 просмотров
Пригласить эксперта
Ответы на вопрос 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 для каждого достаточно применить.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы