"It's not serious in the sense that it doesn't need surgery, but he'll need to immobilize it to recover," team doctor Rodrigo Lasmar said after the player had been taken to hospital.
"Unfortunately, he's not going to be able to play," he said, adding he expected the recovery period to take at least a few weeks."
Neymar, who has scored four goals in the tournament to lead Brazil's bid for a sixth world title, went down after a challenge by Colombia's Juan Zuniga in the 88th minute and looked to be in pain.
His side will face Germany in the semi-final in Belo Horizonte on Tuesday but the absence of Brazil's poster boy is a major blow for the hosts.
The 22-year-old, who plays for Spanish club Barcelona, had to be carried off on a stretcher and was replaced by defender Henrique for the final minutes of the game.
"We lost Neymar on that play, and based on what I've seen, I think it's going to be tough for him to play," Brazil coach Luiz Felipe Scolari had earlier told reporters.
Many Brazil fans had gathered outside the Fortaleza hospital, shouting "Forca Neymar" (be strong Neymar) as the player was being wheeled into the building.
Brazil will also be without captain Thiago Silva when they take on Germany, after he was booked on Friday and misses the game through suspension.
Neymar also received support from the country's president, Dilma Rousseff, who tweeted: "Like all Brazil I am one of those cheering from the sidelines for our star Neymar to get better."