Jonathan Papelbon blew his third save in his last four chances, but Kevin Frandsen picked up the Philadelphia closer.
A pinch-hitting Frandsen crushed a leadoff home run in the bottom of the ninth inning to lift the Phillies to an 8-7 win over the New York Mets in the middle test of a three-game set at Citizens Bank Park.
Frandsen's blast was a no-doubter to left field off Carlos Torres (0-1).
"We did a nice job of battling back and in one pitch it was over," said Mets third baseman David Wright. "That's the way the game goes."
A day after rallying from a three-run hole to win Friday's series opener 4-3, the Mets battled back from a 7-1 deficit to tie things up in the ninth.
Philadelphia starter Jonathan Pettibone held the Mets to one run on five hits before lower back tightness ended his outing after six innings. Pettibone appeared to tweak his back on a swing in the bottom of the sixth. He grounded softly in front of the plate and grimaced as he trotted slowly down to first for the final out.
After attempting to warm up for the next inning, Pettibone gave way to the bullpen with the Phillies ahead by six runs.
The Mets, however, made things interesting in the seventh by putting up a four-spot against the relief corps.
Philadelphia manager Charlie Manuel needed three pitchers to get through the frame.
Michael Stutes faced four batters and didn't retire one, allowing an RBI single to Omar Quintanilla and exiting with the bases-loaded. Eric Young, Jr. then greeted Justin De Fratus with a two-run double to left field and Jordany Valdespin added an RBI groundout.
De Fratus then fanned Wright, but a walk to Marlon Byrd prompted another pitching change. Jake Diekman ended the rally by retiring Daniel Murphy on a called third strike.
Valdespin homered to right field off Papelbon (2-0) to shrink the gap to 7-6 with one out in the ninth. Wright then reached on a fielding error by third baseman Michael Young and scored the tying run from first on Daniel Murphy's two-out single. Wright ran on the pitch, drawing Rollins to second base, and Murphy found the hole on the left side of the infield. Ben Revere overran the ball, but no error was charged to the center fielder.
"I don't feel like I'm in a funk at all," Papelbon said. "There's no reason to sit here and try to figure out what's wrong. I feel like the ball is coming out of my hand good. It's been a pretty confusing week for me."
Slugger Ryan Howard helped Philadelphia build what seemed to be a comfortable lead.
Howard has thrived against Dillon Gee in the past and that trend continued on Saturday. He hit a pair of solo homers and a two-run single off the New York starter.
The first baseman is now 7-for-15 lifetime against Gee, with all but one of those hits a home run.
Howard gave the Phillies an early advantage in the first, driving in Chase Utley and Young with the third straight base hit given up by Gee.
Quintanilla scored on a fielder's choice to put New York on the board in the third, but Philadelphia looked to pull away over the middle frames.
Howard led off the fourth with an opposite-field blast to left-center and Revere contributed a run-scoring single later in the inning. Young and Howard then hammered back-to-back, two-out homers in the fifth to put the Phillies up 6-1.
Revere's speed helped the Phillies tack on a run in the sixth. The center fielder singled and swiped two bases, with a wild throw to third by Mets catcher John Buck allowing Revere to score.
Revere extended his hitting streak to 12 games ... The Phillies improved to 10-2 in their last 12 games against the Mets ... Earlier Saturday, Philadelphia setup man Mike Adams was placed on the 15-day disabled list with bicep tendinitis. The Phillies also selected the contract of pitcher J.C. Ramirez from Triple-A Lehigh Valley and designated utility man Michael Martinez for assignment to make room for Ramirez on the 40-man roster.