That would be waaaay too much overhead for what you're doing. You could easily do a simple shell command (if allowed) to "ls -ohA" which would give you an output of something like:
[root@apollo httpdocs]# ls -ohA
total 48K
drwxr-xr-x 2 bpatters 4.0K Jun 10 20:30 css
-rwxr-xr-x 1 bpatters 18K Jun 10 20:30 favicon.ico
drwxr-xr-x 5 bpatters 4.0K Jun 10 20:30 img
-rwxr-xr-x 1 bpatters 7.0K Jun 10 20:30 index.html
drwxr-xr-x 2 bpatters 4.0K Jun 10 20:30 picture_library
drwxr-xr-x 2 root 4.0K Jun 10 20:30 plesk-stat
drwxr-xr-x 11 bpatters 4.0K Jun 10 20:30 test
Then you can pick apart as you need (the"h" flag means "human readable", otherwise you could remove it and you'd see things like 4096 as the size).
The other option is to [man]clearstatcache/man before you list the directory, use [man]glob/man to get everything in the directory, and then use a while, foreach, or for loop to go over the resulting array and use [man]stat/man to get an array of information about the file(s).
Either way will work. One might be slightly faster (the "ls -ohA") only because you're running a raw command, and not going through PHP to do gather individual file info.