giusto una piccolissima correzione

da

<filename>$file</filename>

a

<filename>" . utf8_encode($file) . "</filename>

stai specificando al client (il browser in questo caso) che l'output è in formato UTF-8, se per caso ci stanno dei caratteri particolari questi vengono visualizzati malamente sul browser