In the fourth inning, Olson swatted a solo shot to left, tying the single-season franchise record set by Andruw Jones in 2005. He leads the majors in homers this year.
Atlanta's Marcell Ozuna hit a three-run homer and singled, Ronald Acuna Jr. socked a two-run homer and Eddie Rosario produced the go-ahead RBI single in the 10th inning. Rosario had three hits for the Braves (95-50), who would clinch the National League East title with a win over the Phillies on Wednesday.
Braves starter Max Fried gave up four hits and one run with six strikeouts and two walks in five innings.
Raisel Iglesias (5-4) picked up the win. Brand Hand threw a scoreless 10th and earned his first save. Nick Castellanos reached third base with one out, but Brandon Marsh struck out and Johan Rojas popped out.
Trea Turner contributed three hits, including a game-tying homer in the ninth inning, and two RBIs for the Phillies (79-66). Bryson Stott hit a two-run home run, and Castellanos added a home run and single. Bryce Harper homered and singled, and Rojas had two hits.
Phillies starter Zack Wheeler struggled through five innings, giving up seven hits and six runs with four strikeouts and three walks. Wheeler also surrendered three home runs.
Craig Kimbrel (7-6) took the loss.
Harper hit a solo homer to lead off the eighth inning as the Phillies sliced what had been a five-run deficit to 6-3. It was Harper's 1,500th career hit. Stott added a two-run shot to center, and the Phillies trailed 6-5. Both homers came against Joe Jimenez.
The Phillies went ahead 1-0 in the second when Castellanos hit a solo homer to right-center.
The Braves tied the game at 1 in the fourth when Olson went deep.
In the fifth, Acuna blasted a two-run home run to left for a 3-1 Atlanta advantage. The ball sailed an estimated 424 feet. The Braves continued to stay aggressive and Ozuna added a three-run homer to left in the inning for a 6-1 lead.
Turner hit an RBI single in the seventh to close Philadelphia within 6-2.
—Field Level Media