The gas explosion occurred just after 6 p.m. and the fire destroyed JJ's restaurant. The four-alarm fire was reported under control at 8:16.
The cause of the blast remains under investigation; a city official earlier said it was believed to have been caused accidentally by a utility contractor.
A JJ's bartender said the blast occurred at the height of happy hour.
A woman who lives near JJ's said she saw many injured on stretchers, one man with a leg that appeared to be almost severed. She also saw people bleeding from the ears, perhaps from the explosion.
A witness said he started smelling gas as early as 1 p.m. and reported it to a construction crew at a project nearby. That person said a health spa next door to JJ's, House of Elan, was destroyed when a wall caved in.
Another witness, Joe Whisler, met friends at JJ's after work. "I could smell gas from my car when I got to 48th and Belleview," he said. "It was overpowering."
Whisler said he noticed a pipe in the ground near JJ's that appeared to be leaking gas as he walked into the restaurant. "I could hear a hiss of gas and smell it wafting up," he said.
About 5:20, he said, firefighters came into the restaurant and told the owners to turn off their ovens and grills and open the doors to the outside.
"I said to the lead fire guy, 'Shouldn't we evacuate here?' " Whisler said. "They told me no, that they had called the gas company. I saw three Missouri Gas Energy workers walking around outside."
But the odor proved too strong for Whisler, and he left about 5:30.
"The smell inside was so bad, I couldn't stand it," he said. "It was unbearable."