posted by rfvv .
1. He has been working hard on the farm for three hours.
2. He has worked hard on the farm for three hours.
(Which one is correct? Are both OK? Which one is commonly used?)
3. They have known each other since they were 13 years old.
4. They have been knowing each other since they were 13 years old.
(#3 is right, but #4 is not right. Right? Do you have rules for that? Would you let me know the website for the rule?)
#1 and #2 are both good. #3 is better than #4 which is awkward.
"They have known" means that they knew each other in the past and continue to know each other in the present.
"They have been knowing" is about the same, but just awkward phrasing, as Sra has said. It's not a common verb expression among native English speakers.