Have you heard from John...
b. two days ago
c. since two days
d. for two days
What is the best answer? Since recently and for two days can use in the present perfect tense
English Language Learners Stack Exchange is a question and answer site for speakers of other languages learning English. It only takes a minute to sign up.Sign up to join this community
a. Have you heard from John recently?
b. Have you heard from John two days ago?
No. It should be "Did you hear from John two days ago?"
c. Have you heard from John since two days?
It does not sound correct. Rather, "Have you heard from John in the last two days?"
Interestingly, "Have you heard from John since yesterday?", which is almost the same sentence structure, sounds ok.
d. Have you heard from John for two days?
No. As the commenter mentioned, a negation such as "I have not heard from John for two days" is ok.