关于I have had a bad day的问题

问题描述:

关于I have had a bad day的问题
I apologise if I have had a bad day and been grumpy with them.请问这里面为什么要用have had a bad day,为什么不可以说if I have a bad day.

if引导一个从句,如果从句的动作先于主句的动作,则用相应时态.
此处主句i apologize 是一般现在时态,而从句if中的动作发生在主句前,则要用现在完成时,即助动词have+过去分词.此处have的过去分词是had.如果主句是一般过去式,则从句要用过去完成时