A question regarding present perfect continuous

I have been devouring information for the past three months.

I have read that perfect tenses should not be used in sentenced with adverbs or adverb phrases of past time. Is the sentence mentioned above incorrect?


Solution 1:

The sentence is correct - it is clear and unambiguous. "The past three months" is a noun phrase describing the three months that end now. The devouring is therefore very likely to have taken place in those months right up to the present.

Solution 2:

The sentence is correct. 'I have been devouring information for the past three months.' for the past three months = for the three months until now.

We can also say, 'I have been devouring information for the last three months'.

It has been raining for the past/last two days. for the past/last two days= for the two days until now.