The Houston Astros had the matchup they wanted, but didn't get the result they needed.
Ryan Howard hit a grand slam, capping a five-run rally in the eighth inning that lifted the Philadelphia Phillies over the Astros 6-5 on Thursday night.
Howard connected with two outs on a full-count pitch from Tony Sipp (2-2).
"The matchup was what we wanted," Astros manager Bo Porter said. "He beat the best guy we have down there."
Chris Carter hit two homers and drove in four runs for Houston, which lost its eighth straight in Philadelphia.
"This was a pretty tough loss," Porter said.
Carlos Ruiz and Ben Revere each had two hits as the Phillies completed a three-game sweep.
Mario Hollands (2-1) pitched two scoreless innings, and Jonathan Papelbon pitched the ninth for his 27th save in 30 chances.
Marc Krauss also homered for Houston.
Philadelphia trailed 5-1 entering the eighth after Colin McHugh threw seven strong innings for the Astros.
Houston reliever Josh Fields gave up hits to three of the four batters he faced, including Cody Asche's RBI single that made it 5-2.
Sipp allowed a single to Jimmy Rollins to load the bases with one out. After Chase Utley flied out, Howard homered into the seats in left-center field.
"I hold myself to a high standard, so I have to make sure it doesn't happen again," Sipp said. "I was trying to go up, but the pitch went down and in. He put a pretty good swing on it.
"I didn't think it was going out. I knew it was high enough, but he didn't drive it like he usually does."
The Philadelphia slugger thought he caught enough of it off the bat but wasn't sure it would clear the wall as he was rounding the bases.
"I hit it pretty flush," Howard said. "I got it pretty good. Off the bat, yeah, I pretty much knew. But that wind started kicking up a little bit. I was happy it was enough."
Howard was ready for Sipp to throw him strikes.
"I knew going in he was going to bury some sliders and I had to keep off the sliders," Howard said. "Bases loaded, I knew at some point he had to give me something to hit. He's got to give me a strike."
Howard pointed to his family after crossing home plate and then took a curtain call. It was the third homer and 11th RBI in 12 games since manager Ryne Sandberg benched the struggling slugger for three games, July 23-25.
Howard has endured boos and some negative reaction to comments he made regarding the treatment he has been getting.
Carter hit his second homer of the game and 24th of the season, a two-run drive in the third. He leads the majors with 11 home runs since the start of July.
Astros: Reliever Josh Zeid had the first of two operations on his right foot on Wednesday, and the Astros deemed it successful. Zeid will have the same operation on his left foot in six weeks. The right-hander appeared in 23 games this season with a 6.79 ERA in 20 2/3 innings. He last pitched on July 24. ... Outfielder George Springer will rejoin the Astros in Houston on Friday, but his status will be evaluated before the game. He was on pace to be activated from the DL (quadriceps), but his return is in question after he left Wednesday's rehab start at Single-A Quad Cities because of discomfort.
Phillies: Cliff Lee's season officially is over. That was the indication on Wednesday when his locker was cleaned out, and the Phillies made the announcement on Thursday that Lee won't pitch again in 2014 due to a Grade 2 strain of his left elbow. Lee will require rest but not surgery and will begin a throwing program in September or October with the hope that he will be healthy for spring training.
Astros: Houston returns home to host intrastate rival Texas on Friday night in a matchup of the teams with the worst records in the AL West. Astros left-hander Brett Oberholtzer (4-7, 4.17) faces right-hander Miles Mikolas (1-4, 7.29). Oberholtzer, in his fourth stint in the big leagues this season, is 4-1 with a 3.08 ERA in his last eight starts.
Phillies: Philadelphia hosts the Mets for the first of four on Friday night. Right-hander A.J. Burnett (6-11, 4.16) opposes New York righty Bartolo Colon (10-9, 4.12) in a meeting of veterans who are a combined 78 years old. Two-time Cy Young winner and eight-time All-Star Roy Halladay also will be on the mound for the Phillies, but in a ceremonial capacity. Halladay will throw out the first pitch as the Phillies welcome back former players on alumni weekend.
McHugh was in line for his first victory since June 3 after allowing one run and five hits, striking out eight, and walking none. He is 0-6 in his last nine starts and has a 1.86 ERA on the road overall.
"McHugh did a great job but our bullpen wasn't able to hold it together," Porter said.
Phillies starter Sean O'Sullivan gave up three homers in six innings. He was summoned from Toledo, Ohio, where the Phillies' Triple-A team was playing, after Philadelphia traded pitcher Roberto Hernandez to the Los Angeles Dodgers earlier Thursday.
O'Sullivan had started the second game of a doubleheader on June 28 against Atlanta in his only other big league appearance this season.
He was just about to take a nap around 1:00 Thursday afternoon when he got the call to catch a plane to Philadelphia. He arrived at the airport around 5:30, but it took him 30 minutes to take the short trip to the ballpark due to rush-hour traffic, giving him about an hour to get ready for the start.
"I could have shown up at 7:02 and I would have been ready to go," he said. "I'm just happy to be here, happy for the opportunity."
UNUSUAL DOUBLE PLAY
Philadelphia's Grady Sizemore was involved in an unusual 6-5-6 double play in the second inning. Asche hit a soft liner behind second base where shortstop Marvin Gonzalez was positioned. Sizemore held up at second base to see if Gonzalez would catch the ball, but when it dropped in front of Gonzalez he was caught in no man's land. Gonzalez stepped on second to force out Carlos Ruiz, who was on first, and then got Sizemore out in a rundown.
That twin killing was one of six double plays in the game, four of which were converted by Philadelphia to tie a season high.
BASES IN GOOD HANDS
The Phillies brought out three recipients of the Purple Heart to change the bases after the third inning. Purple Heart recipients Shawn Lees, Bryon Yoder and Carol Eggert changed the bases while receiving a standing ovation from the crowd of 26,609 fans and applause from the Astros and Phillies players.