date("Y年n月j日@B",$_SERVER['REQUEST_TIME'])
とやると日付とBeat表示が一致しなくなります。
date("Y年n月j日", $_SERVER['REQUEST_TIME']-8*60*60).date("@B",$_SERVER['REQUEST_TIME'])
などとすることになりますが、
こういうものなんでしょうか?

また、こういうものだとすれば、なんで
こんな仕様になってるのか教えてください。