è evidentemente un problema di cache locale del browser, però a meno che il file xml non sia generato come stream di uno script php, php in tutto questo non centra un tubo (non è che php entra nel pc dell'utente e cancella di volta in volta i files).
se invece il file viene prelevato direttamente dal webserver devi controllare quali sono le indicazioni nella configurazione del server per gli expire headers.