Ryan Howard's first hit in nine days led the Phillies to a 3-1 win and ended the Pittsburgh Pirates' nine-game win streak in the opener of a three-game series.
Howard had two hits, including an RBI single in the sixth inning that kick started a three-run rally and helped the Phillies snap a two-game skid.
Jonathan Pettibone (4-3) also broke out of a slump and won for the first time since May 14, a streak that covered eight starts. Pettibone gave up one run on three hits with six strikeouts in 5 2/3 innings.
Brandon Cumpton (0-1), who was recalled from Triple-A Indianapolis earlier in the day, took the loss after giving up three runs on six hits in 5 2/3 innings.
"He continues to come in, throw strikes, be aggressive," Pirates manager Clint Hurdle said. "It was efficient and he was sharp through five (innings)."
Garrett Jones hit a home run in the sixth to account for the Pirates run, but he also struck out with two outs and the bases loaded in the third inning.
Michael Young started the sixth inning with a base hit, but was erased when Chase Utley grounded into a fielder's choice. Jimmy Rollins blooped a single into right, then advanced to third when Howard broke an 0-for-22 slump and sliced a base hit into left-center field to put the Phillies on the board. Rollins scored on Domonic Brown's sacrifice fly and Howard came home when Delmon Young lined a double to left-center field to give the Phillies a 3-0 lead.
"It felt good to be able to get out there and get a knock and put the team up," Howard said. "It felt good to get out there and run around a little bit."
In the bottom half of the sixth, Jones slammed a fastball over the center- field fence and chase Pettibone from the game.
The Phillies used five middle relievers to bridge the gap from Pettibone to closer Jonathan Papelbon and it almost collapsed in the eighth inning.
J.C. Ramirez, who retired the first 11 major league hitters he faced, walked Russell Martin to start the frame. Ramirez induced a fly out and left for Antonio Bastardo. Bastardo struck out Brandon Inge, but then walked Pedro Alvarez and gave up a base hit to Neil Walker to load the bases.
Justin De Fratus calmly jogged out to the mound to face Jordy Mercer with the bases loaded but left it with a slap of his glove and a yell after he got Mercer to chase a devastating slider that dove low and out of the strike zone to end the threat.
Papelbon entered in the ninth inning and retired the Pirates in order to pick up his 16th save.
The Phillies' bullpen combined for 3 1/3 scoreless innings with three hits, three walks and three strikeouts ... The Phillies snapped a three-game losing streak against Pittsburgh. The Pirates have not won four straight games against Philadelphia since 2002 ... The Pirates win streak was their longest since winning 10 in a row from June 26-July 5, 2004 ... Pittsburgh was 2-for-4 with runners in scoring position and stranded nine men on base ... Philadelphia was 1-for-3 with runners in scoring position and left six on base.