Cole Hamels gave up a season-high six runs in six innings, the most runs allowed by the lefty since also surrendering six on April 29, 2014, to the Mets. Miami has won nine of 10, and reached 12-12 after starting 3-11. The Phillies have dropped five straight.
"We've been on a nice run," Miami manager Mike Redmond said. "You give all those guys in that room the credit. They've gone out there and grinded it out together and put a nice streak together. We're playing good baseball. We're pitching. We're playing good defense, getting timely hitting.
"I knew we would get it going. It wasn't the start that we wanted, but at the same time, it's such a long season. It's fun to see these guys playing with confidence out there and picking each other up, and having some fun."
Hamels got out of a first-and-third, no-out jam in the first inning. But in the second inning, the Marlins capitalized on a two-out walk to Gordon. Prado blasted a three-run homer to left field. Statcast measured the drive at 414 feet. And in the third inning, back-to-back doubles by Jeff Baker and J.T. Realmuto made it 4-0.
Haren threw six scoreless innings, and the Marlins have now limited the opposition to three or fewer runs in 10 straight games. Philadelphia's Odubel Herrera had an eighth-inning single, extending his streak to 17 games reaching safely.
MOMENTS THAT MATTERED Walk and a blast: Gordon doesn't walk too often, just four times in his first 104 plate appearances. But a two-out walk in the second inning proved big. Because after Gordon reached, Prado blasted his three-run homer to left, giving Miami a three-run advantage.
Unable to capitalize: In the second inning, the Marlins called for a hit-and-run with Ichiro Suzuki at first and Adeiny Hechavarria at the plate. Hechavarria perfectly executed it with a blooper to right, but Ichiro had waited to see whether the ball would drop. In the process, he touched second base but began heading in the direction of first. When he did so, he forgot to re-touch second on his way to third. The Phillies appealed the play and the out was recorded at second. After a sacrifice bunt by Haren, Hamels couldn't shut down the inning when he walked Gordon and surrendered the Prado homer.
"He over-ran and came back," Phillies manager Ryne Sandberg said. "We saw that from the bench."
Haren cruises through six: Haren wasn't in much trouble in his six scoreless innings. But the Phillies did have a chance in the third inning. With runners on second and third after a Realmuto passed ball, Haren got out of it when Herrera lined sharply at first baseman Baker.
"It says a lot about the team. I really don't think anyone panicked in here. Obviously, we hear it from the outside. I think guys felt bad. Red getting blamed when it was us out there not performing. So I think we're all happy to turn it around for him. We've gotten back to .500 after digging ourselves a pretty big hole. One thing is Red has been the same guy from 3-11 to today. I'm happy we turned it around for him. We just got to keep playing good ball." -- Haren on team's recovery from slow start and Redmond taking early heat
"Just mixing it up. He's hitting both sides of the plate, he's using the whole field. He choked up on the bat. He was able to handle both sides of the plate. Tough to pitch to right now He's the guy you want to keep off the base." -- Sandberg on pitching to Gordon
SOUND SMART WITH YOUR FRIENDS
Prado matched his season high with four RBIs. The Marlins third baseman has done it twice this year, both against the Phillies. Along with Saturday, Prado also had four at Philadelphia on April 23. The last time Prado had more than four RBIs was when he collected five. Against? You guessed it, the Phillies, on July 26, 2014.
The Marlins tested the home plate collision rule in the first inning. With Gordon on third, Giancarlo Stanton tapped to the mound. Hamels flipped home to Carlos Ruiz and Gordon attempted to jar the ball free. Gordon was tagged out, and Miami challenged to see if Ruiz provided a lane. The review lasted one minute, 26 seconds and the out stood.
Mat Latos threw a bullpen session on Saturday, and the Marlins are weighing whether he will be ready to start on Tuesday at Nationals Park. Latos tweaked his left hamstring on Wednesday during a base hit in the fifth inning against the Mets. He is seeing if he can pitch through the ailment.
WHAT'S NEXT Road team: The Phillies finish off the second leg of a 10-game trip on Sunday afternoon at 1:10 p.m. ET against the Marlins. Severino Gonzalez, who surrendered seven runs on 10 hits in just 2 2/3 innings in his Major League debut against the Cardinals on Tuesday, looks to bounce back after that rough start.
Marlins: The Marlins wrap up their nine-game homestand on Sunday afternoon against the Phillies. Jarred Cosart, who beat the Phillies on April 22 at Citizens Bank Park, gets the nod. In his win at Philly, Cosart gave up one run on four hits with four strikeouts. He comes off a no-decision against the Mets, logging eight scoreless innings.
Joe Frisaro is a reporter for MLB.com. He writes a blog, called The Fish Pond. Follow him on Twitter @JoeFrisaro. Christina De Nicola is a contributor to MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.