Kyle Kendrick breezed through the St. Louis lineup Saturday night, throwing just 94 pitches for his first career shutout and leading the Phillies to a 4-0 win.
Kendrick (1-4) earned his first win in his sixth start of the season, giving up seven hits and no walks while striking out four. He threw 70 of his 94 pitches for strikes, pushing the game along to a finish shy of 2 1/2 hours.
"Once you get out there (for the ninth), you definitely want to finish it with that third out," Kendrick said.
The Phillies will go for a four-game sweep Sunday when ace Roy Halladay goes against Adam Wainwright.
Jaime Garcia (3-3) struck out six batters in six innings but took the loss after giving up four runs on six hits and two walks.
Unable to solve Kendrick, the Cardinals fell to 5-11 in their last 16 games.
The 27-year-old righty picked up his second major league complete game and first since July 3, 2010, against the Pittsburgh Pirates. He improved to 5-1 in his career against the Cardinals.
His Philadelphia teammates gave him the only run he needed in the fourth inning, when Hunter Pence led off with a single and Shane Victorino knocked him in with a one-out double to make it 1-0.
Placido Polanco sparked a three-run rally in the sixth with a leadoff double.
Walks to Pence and Victorino in front were followed by John Mayberry's two- run double to left, and the Phillies took a 4-0 lead when Victorino scored on Freddy Galvis' ground out.
Meanwhile, Kendrick cut through the Cardinals lineup. Six of the hits he gave up were singles -- Tyler Greene doubled in the sixth, but was stranded -- and he faced the minimum in four innings.
The Phillies turned inning-ending double plays in the fifth and seventh to erase singles.
"We had a few hits, we just couldn't pile them together at the right time," said Cardinals manager Mike Matheny. "He just kept us off-balance."
Chuckie Fick, called up from Triple-A Memphis when the Cardinals sent down reliever Fernando Salas, made his major league debut in the ninth inning and pitched around a Brian Schneider single.
The 26-year-old right-hander is the nephew of former big leaguer Robert Fick.
In the ninth, Matt Holliday was retired on a line drive to first baseman Ty Wigginton that was dropped.
Holliday, thinking the ball was caught, was booed for not running all the way as Wigginton recovered and stepped on first in what could have been a close play. Carlos Beltran followed with a single, but was stranded at first when Kendrick struck out David Freese to end the game.
The Phillies have won four in a row on the heels of a four-game losing streak.
Salas led the Cardinals in saves last season with 24, but wasn't the closer as the team made its run to the World Series title. This season, he was 0-2 with a 6.32 earned run average in 18 games before being sent down.