Present Perfect
Is a verb tense in English used to talk about actions that:
1) Happened in the past but are relevant in the present,
2) Have occurred at an unspecified time in the past
3) Have occurred repeatedly up to now.
When is it used?
1) Past actions with a present result:
I have lost my keys. (I don't have them now.)
2) Actions that occurred at an unspecified time:
Have you ever been to Paris?
3) Actions that began in the past and continue into the present:
I have lived here for five years.
Formula
Positive: Subject + have/has + past participle of the verb
Negatvie: Subject + have not / has not + past participle of the verb
Question: have / has +Subject + past participle of the verb
Present Perfect
With for
It is used to express how long an action that began in the past and is
still continuing in the present has lasted.
Formula:Subject + have/has + past participle + for + period of time
Important:” For" is followed by a period of time::
for two days
for six months
for ten years
Examples:
I have lived in this city for 10 years.
She has worked at that company for a long time.
We have studied English for three hours.
Present Perfect
With since
It's used to talk about actions that began in the past and continue in the
present.
The word "since" indicates the exact moment the action began.
Formula: Subject + have/has + past participle + since + [specific moment]
What kind of moment is used with "since"?
With "since" we use a specific point in time, such as:
a year: since 2020
Examples:
I have lived here since 2018.
She has worked at that company since June
We have known each other since high school.
Remember:
"Since" = from a specific point
If you want to talk about a duration, use "for"
Present Perfect
With how long
It is used to ask how long an action that started in the past and is still
continuing in the present has been occurring.
Formula: How long + have/has + subject + past participle...?
Examples:
How long have you lived in this city?
How long has she worked at that company?
Why don't we use the simple past tense here?
Because if the action is over, we don't use "how long" with the
present perfect. You would use the simple past tense only if it's
no longer happening:
How long did you live in Spain?
(Only if you no longer live there)