Potrebbe essere che la funzione fallisce la sua esecuzione restituendoti false.
Ma dato che false in altri contesti viene interpretato come 0 e dato che la data 0 per i timestamp equivale 01/01/1970, tutto torna. La differenza di orario, ovvero il fatto che a te segni 01:00 invece di 00:00 può essere dovuta al fuso orario.
Per verificare il valore ritornato dalla funzione hai due possibilità:
1)confrontarla con false trmite l'operatore === (tre volte uguale)
2)Abilitare i warning nel file php.ini e quando la funzione fallisce dovrebbe produrre un warning in output
Tipicamente la funzione fallisce se il file non esiste, quindi l'esempio del manuale PHP ti può aiutare a fare qualche prova
Codice PHP:
<?php
$filename = 'somefile.txt';
if (file_exists($filename))
echo "$filename was last modified: " . date ("F d Y H:i:s.", filemtime($filename));
else
echo "Corbezzoli $filename non esiste";
?>