Skip to content

Unit 11 — How long have you (been) ...?

某件事「已经持续多久了?」


1. 核心概念

我们使用 Present Perfect(现在完成时) 来谈论:

过去开始,并且一直持续到现在的事情。

基本时间关系:

past                                  NOW
  │                                    │
  └───────────────────────────────────▶│
         have / has + done
         have / has + been ...

核心:

过去开始 → 持续 → NOW


2. Example:Dan and Kate

Dan and Kate are married.

They got married exactly 20 years ago, so today is their 20th wedding anniversary.

They have been married for 20 years.

他们已经结婚 20 年了。


Present vs Present Perfect

想表达什么English时态
他们现在是已婚状态They are married.Present
他们结婚多久了?How long have they been married?Present Perfect
他们已经结婚 20 年了They have been married for 20 years.Present Perfect

注意

询问「现在是什么状态」:

Are they married?

他们结婚了吗?

但是询问「这个状态持续多久」:

How long have they been married?

他们结婚多久了?

而不是:

❌ How long are they married?


回答:

They have been married for 20 years.

而不是:

❌ They are married for 20 years.


3. 为什么要用 Present Perfect?

因为:

are married

只是在描述:

NOW 的状态

而:

have been married for 20 years

描述的是:

过去 → NOW 的持续过程

时间轴:

20 years ago                         NOW
      │                               │
      └──────────────────────────────▶│
          have been married
          <---- for 20 years ---->

所以:

表达关注点
They are married.他们现在是已婚状态
They have been married for 20 years.这个状态已经持续 20 年

4. Present vs Present Perfect

图片中的核心对照:

Present(现在时)Present Perfect(现在完成时)
he ishe has been
we knowwe have known
do they havehave they had
she is waitingshe has been waiting

时间关系:

Present

只关注:

                    NOW
                     │
                     ▼
                  he is
                 we know
              do they have?
             she is waiting

Present Perfect

关注:

PAST ─────────────────────────▶ NOW
          he has been
        we have known
        have they had?
    she has been waiting

5. Example 1 — be

Present

Paul is in hospital.

Paul 现在在医院。

关注的是:

Paul 现在在哪里?


Present Perfect

He's been in hospital since Monday.

= He has been in hospital since Monday.

Paul 从星期一开始就在医院。

时间轴:

Monday                              NOW
  │                                  │
  └──────── has been ───────────────▶│
  ↑
since

对比

PresentPresent Perfect
Paul is in hospital.He has been in hospital since Monday.
Paul 现在在医院Paul 从星期一开始一直到现在都在医院
关注现在状态关注状态持续多久

错误:

❌ Paul is in hospital since Monday.

正确:

✅ Paul has been in hospital since Monday.


6. Example 2 — know

Present

We know each other very well.

我们彼此非常了解。

描述:

现在的状态。


Present Perfect

We've known each other for a long time.

我们已经认识很长时间了。

时间轴:

PAST ─────────────────────────▶ NOW
  │                              │
  └────── have known ───────────▶│
        <--- a long time --->

对比

PresentPresent Perfect
We know each other very well.We've known each other for a long time.
我们彼此很了解我们已经认识很久了
描述现在关系描述这个关系持续了多久

注意:

❌ We've know each other ...

因为 know 的过去分词是:

know → knew → known

所以:

✅ We've known each other for a long time.


7. Example 3 — have

Present

Do they have a car?

他们有车吗?

这里的 have = 拥有

描述的是:

他们现在有没有车?


Present Perfect

How long have they had their car?

他们拥有这辆车多久了?

这里:

have → had → had

结构:

have + had

所以:

How long have they had their car?

时间轴:

买车 / 开始拥有                     NOW
      │                              │
      └──────── have had ──────────▶│
                 ↑
              持续拥有

对比

PresentPresent Perfect
Do they have a car?How long have they had their car?
他们有车吗?他们这辆车买多久了?
有没有?已经有多久?

8. Example 4 — wait

这里稍微特殊,因为 wait 是一个持续动作。

Present Continuous

She's waiting for somebody.

她正在等某个人。

关注:

她现在正在做什么?


Present Perfect Continuous

She hasn't been waiting very long.

她还没有等很久。

关注:

这个动作到现在持续了多久?

对比

Present ContinuousPresent Perfect Continuous
She is waiting.She has been waiting.
她正在等她已经一直在等
关注现在正在做什么关注从过去到现在的持续过程

时间轴:

is waiting

                      NOW
                       │
                       ▼
                  is waiting

has been waiting

PAST ─────────────────────────▶ NOW
         has been waiting
      <----- duration ----->

9. How long ...? 的核心结构

当你想问:

「已经……多久了?」

经常使用:

How long + Present Perfect ...?


常见结构

类型结构Example
状态How long have/has + 主语 + been ...?How long have they been married?
状态动词How long have/has + 主语 + 过去分词 ...?How long have you known him?
have = 拥有How long have/has + 主语 + had ...?How long have they had their car?
持续动作How long have/has + 主语 + been + V-ing ...?How long have you been waiting?

10. 四组核心变化

① be → have been

现在:

He is in hospital.

持续到现在:

He has been in hospital since Monday.


② know → have known

现在:

We know each other.

持续到现在:

We have known each other for years.


③ have → have had

现在:

They have a car.

持续到现在:

They have had the car for five years.


④ be waiting → have been waiting

现在:

She is waiting.

从过去一直持续到现在:

She has been waiting for an hour.


11. 最重要的思维区别

不要简单理解成:

Present = 现在 Present Perfect = 过去

因为 Present Perfect 的重点其实也是 NOW

真正的区别是:

思维PresentPresent Perfect
关注现在是什么状态?这个状态持续多久了?
时间范围NOWPAST → NOW
isishas been
knowknowhave known
havehavehave had
waitis waitinghas been waiting

12. 和 for / since 连接起来

这一单元和 for / since 是直接关联的。

How long?

How long have they been married?

他们结婚多久了?

回答可以使用:

for + 时间长度

They've been married for 20 years.

20 years ago ─────────────────▶ NOW
             <--- 20 years --->
                    FOR

since + 时间起点

They've been married since 2006.

2006 ─────────────────────────▶ NOW
  ↑
SINCE

所以三者的关系是:

功能关键词Example
问持续多久How long?How long have you lived here?
回答时间长度forfor ten years
回答开始时间sincesince 2016

13. 一条完整的学习链

第一步:描述现在

They are married.

他们现在结婚了。

第二步:问持续时间

How long have they been married?

他们结婚多久了?

第三步:用 for 回答长度

They've been married for 20 years.

已经 20 年了。

第四步:用 since 回答起点

They've been married since 2006.

从 2006 年开始。


最终思维图

                     NOW
                      │
                      ▼
──────────────────────●
                     are
                    know
                    have
                are waiting
                 PRESENT


PAST ─────────────────● NOW
  │                   │
  └──────────────────▶│
                   have been
                   have known
                    have had
              have been waiting
               PRESENT PERFECT

核心区别:

Present

「现在怎么样?」

Present Perfect

「从过去开始,到现在已经多久了?」

而:

How long? → 问长度

for → 给长度

since → 给起点