Como te comento, ese código (usando opendir) solo funciona de manera local, para hacerlo de forma remota necesitas usar un request HTTP usando sockets como por ejemplo
fsockopen() o
cURL para poder entrar a las diferentes carpetas e ir analizando el contenido.
El cronjob lo único que hace es programar tu script (o programa) para que se ejecute cada X tiempo.
Saludos.