ST. LOUIS — All Adam Wainwright's balky elbow needed was a little rest.
The St. Louis starter tossed eight strong innings, and Matt Holliday broke an eighth-inning tie with a run-scoring double to lead the Cardinals to a 4-1 win over Philadelphia that snapped the Phillies' season-high five-game winning streak on Saturday.
Wainwright (10-3) allowed one run and six hits, struck out seven and didn't walk a batter for the Cardinals, who broke a three-game losing streak. He pitched on 10 days' rest after missing a start due to elbow tendinitis.
"That was the right decision," Wainwright said of skipping an outing. "I felt real good all game. Sometimes you never know how you're going to respond when you haven't thrown very much. But I was fine.
"The only time I even felt anything in my arm at all was my first swing where Cole Hamels jammed me and I grounded to third."
Wainwright needed to be on his game to beat Hamels in a matchup of heavyweight arms.
"It was a pitchers' duel as advertised," Philadelphia manager Ryne Sandberg said. "Both guys were outstanding."
Wainwright was slightly better. He never let a runner get beyond second base except in the third when the Phillies scored their only run. Wainwright, who lowered his ERA to 2.08, threw 104 pitches, 68 for strikes.
"All of his pitches were sinking, and he mixed them up well," Philadelphia catcher Carlos Ruiz said.
St. Louis manager Mike Matheny was impressed with Wainwright's command following the layoff.
"It's just amazing how sharp he was," he said. "It looked like the Adam we've watched all season."
Trevor Rosenthal backed up Wainwright by striking out two in the ninth to earn his 21st save in 24 attempts.
Hamels (2-4) gave up three runs and seven hits over 7 1/3 innings. He had a scoreless streak of 24 2/3 innings snapped on Matt Adams' second-inning sacrifice fly.
Hamels refused to speak with reporters after the game.
Holliday ripped a one-out double to bring in Matt Carpenter and break the 1-1 tie. Carpenter coaxed a leadoff walk to begin the eighth.
"At that point in the game, you're looking at having a chance to win if you can scratch across one run," Holliday said. "Luckily, (Hamels) left it up a little and I put a good swing on it."
St. Louis added two more runs in the eighth to go up 4-1. Jhonny Peralta brought in Holliday with an infield ground out, and Adams followed with his second sacrifice fly of the game.
"We grinded it out," Matheny said. "We're getting good at those close games by just staying the course."
Philadelphia had tied it 1-1 in the third inning on successive singles by Cody Asche and Hamels and a sacrifice fly by Jimmy Rollins. Asche, who grew up in O'Fallon, Mo., recorded his first hit at Busch Stadium.
Rollins extended his hitting streak to 15 games with a single in the eighth inning.