PHILADELPHIA (AP) - Dakota Hudson tossed six effective innings, Jedd Gyorko hit a two-run homer and the St. Louis Cardinals beat the Philadelphia Phillies 5-3 Thursday.
Marcell Ozuna, Matt Wieters and Matt Carpenter also went deep for the Cardinals, who avoided their first sweep against Philadelphia since 2006.
Hudson (4-3) allowed four hits and one run in his fourth straight quality start. Jordan Hicks got the last three outs for his 11th save in 12 tries after three relievers worked two innings.
Phillies starter Jerad Eickhoff (2-3) gave up four runs and eight hits in 6 1/3 innings.
The Cardinals jumped ahead 2-0 in the second on a pair of solo homers. Ozuna hit his 16th on a 1-2 pitch the opposite way into the right-field stands. One out later, Wieters drove one out to right for his second homer in two days and third this season.
Gyorko's two-run shot in the seventh made it 4-1. Carpenter connected off Edgar Garcia as a pinch-hitter in the seventh.
After Carlos Martinez tossed a scoreless seventh, the Phillies rallied against him in the eighth. Andrew McCutchen walked and Jean Segura hit a single. Andrew Miller entered and Bryce Harper ripped an RBI single off him. John Gant replaced Miller and Rhys Hoskins singled in another run to cut it to 5-3.
But Gant retired Cesar Hernandez on an infield popup, struck out Scott Kingery and pinch-hitter J.T. Realmuto flied out.
The Cardinals twice intentionally walked Hoskins to load the bases after Harper hit doubles. The strategy paid off because the Phillies only managed one run. Hernandez had an RBI fielder's choice grounder in the fourth but lined into an inning-ending double play in the sixth.
Cardinals: C Yadier Molina sat out for the second straight game. He has a bruise on his right hand between his thumb and index finger.
Phillies: Harper was back in the lineup after fouling a pitch off his right foot Wednesday night and exiting the game in the fifth inning with a 10-run lead.
Cardinals: RHP Miles Mikolas (4-5, 4.76 ERA) starts Friday night at home against the Chicago Cubs. He is 3-0, 1.32 in six career appearances, including four starts, vs. the Cubs.
Phillies: RHP Jake Arrieta (5-4, 3.60) pitches the opener of a three-game series at the Los Angeles Dodgers on Friday night. He is 3-3, 3.07 in seven career starts against the Dodgers.