Jake Arrieta (8-6) allowed four runs in six innings but contributed a two-run single. Jean Segura and César Hernández each had three of the Phillies’ 17 hits and scored twice, and Brad Miller hit his third homer and singled in a run.
“To salvage a game and not get swept is important for us,” Arrieta said.
After Philadelphia took a 10-1 lead, Marlins catcher Jorge Alfaro earned a consolation prize of sorts. Recently sidelined by a concussion, he came away from a sixth-inning collision with a bloody nose, stepped to the plate in the bottom of the inning with a swab in his left nostril and hit a two-run homer.
“I want to stay in the game no matter what,” Alfaro said.
That was it for Marlins’ highlights. They had a chance to sweep Philadelphia for the second weekend in a row but instead looked like a team with the NL’s worst record — which they are.
Miami allowed the Phillies to score on a steal attempt that turned into a strange double play, and again after the Phils had two runners trapped on third base.
Philadelphia broke the game open with seven runs in the sixth, including five against Wei-Yin Chen, who failed to retire a batter and was jeered by the crowd of 11,742. His ERA rose to 8.16.
Trevor Richards (3-9) allowed three runs in five innings.
The Phillies went 11-16 in June to fall behind Atlanta in the NL East.
“You’re going to have your ups and downs during a season,” Harper said. “Hopefully you have more ups than downs.”
WEIRD BUT TRUE
The Phillies manufactured an odd run in the third. With runners at the corners and one out, Harper ran on a 3-2 pitch to Rhys Hoskins, who struck out. When Alfaro threw to second, Harper stopped before reaching the base. That allowed Kingery to score from third without a play before Harper was tagged out for an inning-ending double play.
Philadelphia found another bizarre way to score in the sixth. Harper singled with the bases loaded, but when Arrieta hesitated before advancing from second, he and Segura found themselves both at third. Arrieta then broke for the plate and was awarded home when he brushed past Alfaro, who was called for obstruction because he didn’t have the ball.
“I saw that he was in the baseline — kind of a little heads-up play there,” Arrieta said.
Said Alfaro: “It was an ugly day for me. I did a couple of things that didn’t help the team at all.”
Each team had one player chosen for the All-Star Game — catcher J.T. Realmuto for the Phillies, and right-hander Sandy Alcantara for the Marlins.
“With this team, there are multiple guys deserving of making the All-Star team,” Realmuto said, “so to represent this team is special for me.”
In his first season with the Phillies, Harper was left off the All-Star roster for just the second time in his career. He did not make the team in 2014 with Washington after he missed two months with a thumb injury.
Realmuto tweaked his hamstring and came out of the game in the sixth, but said the move was precautionary and the injury was “no big deal.”
Marlins: RHP Pablo Lopez (shoulder) will begin a throwing program Monday and is expected to return at some point this season.
Harper said he hopes to reach 200 homers and 1,000 hits with one swing, even though it would mean just one souvenir instead of two.
“I’ll take that — one less ball to carry,” he said.
Phillies: RHP Nick Pivetta (4-2, 5.63) is scheduled to start Tuesday when Philadelphia begins a three-game series at the first-place Braves. Pivetta has a 7.13 ERA in his past three starts.
Marlins: RHP Zac Gallen (0-1, 3.60) is scheduled to make his third career start Tuesday when Miami opens a six-game trip at Washington.
More AP MLB: https://apnews.com/MLB and https://twitter.com/AP_Sports
Follow Steven Wine on Twitter: https://twitter.com/Steve_Wine