От структуры директорий зависит. Может и не 1 секунду.
Например, файловый кеш архивированных сообщений нашего форума (в локальной копии):

Скрипт на локалке работает порядка 40 секунд.
А даже если всего десяток директорий, но в каждой многие тысячи файлов - тоже весьма долго будет работать...
Как бы считать только директории, не считая файлы.
scandir считывает все файлы в директории, а значит, чем больше файлов, тем больше потери времени на сбор не нужной нам информации.
_____________
Бесплатному сыру в дырки не заглядывают...