De Bruyne picked up the injury in Manchester City’s 2-0 win over Aston Villa on Wednesday.
The 29-year-old Belgium international could miss up to nine games for Manchester City including matches against Liverpool, Arsenal, Tottenham Hotspur and Borussia Monchengladbach in next month’s UEFA Champions League round of 16 first leg.
De Bruyne has made 20 appearances in all competitions for Manchester City this season, scoring three goals.
"Kevin, like the doctor said today after reviewing the scan, will be four to six weeks out,” Manchester City manager Pep Guardiola told reporters on Friday ahead of the Citizens’ FA Cup game against Cheltenham at the weekend.
"We have to move forward," added Guardiola. "I'm not saying that nobody doesn't know about his importance.
"Unfortunately for him and us, he'll be out for an important part of the season, and we have to find a solution because everyone's struggling in this situation, and we have to adapt.
"The players don't want to get injured, but they are human. Why in the FA Cup can we use five subs but in the league not? It is a different competition. Is it a special one? It's not just because it's Kevin. It is everyone for the past five seasons. It is too many games."
Manchester City are second on the Premier League table, two points behind leaders Manchester United, but with a game in hand.