Learn English – I have played football yesterday. is it Correct

grammar

I have played football yesterday.

is it Correct?

we can say : I was playing football yesterday.  
I played football yesterday.

but in this sentence "have played football"
has the general sense of "played football on one or more unspecified occasions in the past", and does it go with "yesterday"? which is a specific occasion.

Best Answer

Your sentence is grammatically incorrect. This is because that sentence is in present perfect tense, which is used to refer to an unspecified period of time in the past. However, ‘yesterday’, is a specification of time.

You can read up about present perfect tense here.

It should either be “I played football yesterday”, “I was playing football yesterday”, or “I have played football before”.

The first sentence is in simple past tense and it simply means that you started playing football yesterday.

The second sentence is in past continuous and it means that you started playing football before yesterday and was still playing football yesterday.

More information about the use of simple past and past continuous can be found here.

The third sentence is in the past perfect tense. It means that you have played football any time from when you were born up to now.

I find that this chart is quite useful in understanding which point in time specific tenses are referring to.

Related Topic