As most template tags that start with the_
this one echoes time and not returns it (which template tags that start with get_the_
do).
First the_time()
fires and echoes year, then its return (null
) gets concatenated and echoed with string.
So:
echo 'Archive for ';
the_time('Y');
Or:
echo 'Archive for ' . get_the_time('Y');