I've made a dirlist script that simply reads from the directory the script sits in(easily modified to view any directory). I've never messed with the FTP functions.
I think i used scandir (or equivelent) function to just pull a directory listing into an array, and stepped through the array, checking each "filename" to see if it was a directory or filename, and was able to easily access the modified time and filesize with the set of filesystem functions.
If you can't get the info you need from the FTP listings, try resolving a path to whatever file/subdir you're looping on and use the PHP filesystem functions instead. (filesize, filemtime)
http://www.php.net/filesystem