ST. LOUIS -- The game was just a few minutes old when Chase Utley singled to extend his hitting streak to 35 games. Quite a contrast from the suspense the previous night when he needed five at-bats to keep it going.
"Last night when he gets that first hit we're all jumping up and down screaming," pitcher Cole Hamels said. "Your voice kind of leaves you for a bit because you're so excited.
"Just to get it out of the way in the first at-bat, everybody is just so pumped, and then I think everybody can relax after that."
Utley, held hitless until the eighth inning Wednesday before reaching on an infield single that was initially ruled a fielder's choice, is tied with three other players for the 10th-longest streak in major league history.
"I didn't have to wait too long tonight," manager Charlie Manuel said. "I just sit and watch him hit, and pull like hell for him."
The Phillies finished off a three-game sweep and sent the NL Central leaders to their seventh straight loss. The Cardinals lost a season-high eight in a row in June.
"It'd be hard to do worse than we're doing right now," manager Tony La Russa said. "We're not even getting to the ninth inning with a chance to win."
Hamels, a 22-year-old rookie, matched his career best by striking out 12 in seven innings. He allowed only two singles and a run, and fanned a dozen for the second time in three games.
One of his strikeout victims was Albert Pujols, who singled in three at-bats against the Phillies' phenom.
"I do know he's a good hitter, but when I step on that mound it's my game," Hamels said. "I'm going to go out there and I'm going to pitch my own game, and I'm not going to let anybody else affect that."
Another rookie, 33-year-old Chris Coste, had the first four-hit game of his career and drove in two runs. Aaron Rowand homered for the Phillies, who had 16 hits a night after getting 18 in a 16-8 romp.
"I don't know if there's a way to explain it," said Ryan Howard, who was 7-for-12 with seven RBI in the series. "I don't think anybody here is trying to look for an explanation of what's going on, but to just keep going out and trying to keep what we've got going, going."
Scott Rolen drove in the Cardinals' run with a sacrifice fly in the fourth.
Jason Marquis (12-9) worked six innings and allowed four runs on nine hits while throwing 118 pitches. The Cardinals used eight pitchers the previous night.
"Obviously, the results aren't what I was looking for," Marquis said. "Some days you have it and some days you don't."
Marquis retired the first two batters before Utley, batting .405 (62-for-153) during his streak and .330 overall, lined a 2-2 pitch to center. He took second when So Taguchi bobbled the ball before throwing late.
Utley hit an RBI single off first base in the third to give the Phillies a 1-0 lead, making him 6-for-11 against Marquis. Utley has at least two hits in six of his last seven games, batting .411 (14-for-34) with seven RBI in that span.
Utley's streak is the second-longest in franchise history, trailing only Jimmy Rollins' 38-game run. Rollins hit in the final 36 games last season and the first two this year before he went 0-for-4 against Marquis and reliever Josh Hancock.
Luis Castillo of Florida (2002), Ty Cobb of Detroit (1917) and Fred Clarke of Louisville (1895) also had 35-game streaks.
Utley is tied with Castillo for the major league record for a second baseman. The Phillies play Friday night in New York.
The major league record is 56 consecutive games by the Yankees' Joe DiMaggio in 1941.
Hamels (4-5) began the game by walking David Eckstein, then struck out the next four batters. The Cardinals finally put a ball in play on his 30th pitch when Scott Spiezio flied out to center. Hamels fanned Rolen, Ronnie Belliard, Juan Encarnacion and Marquis twice each.
The Cardinals didn't get a hit until the fourth when Belliard singled for his first hit in three games with his new team, advanced to third on a single by Pujols and scored on Rolen's fly to make it 3-1.
Hamels has 44 strikeouts in 30 1/3 innings in his last five starts and also fanned 12 Braves on July 24, although he allowed seven runs in 5 1/3 innings and lost that game.
Utley, Howard and Coste each had an RBI single in the second to put the Phillies ahead 3-0. Three straight singles in the fifth, the last by Coste, made it 4-1, and Rowand doubled in the seventh, stole third and scored on catcher Gary Bennett's wild throw.
- Belliard was 0-for-6 with three strikeouts and two double plays before singling in the fourth for his first hit with the Cardinals. He also had a successful squeeze bunt on Tuesday.
- The Cardinals' Nos. 1 and 2 hitters were a combined 2-for-22 in the series.
- The Phillies have won 10 of the last 15 games against the Cardinals.
- Philadelphia is the only unbeaten NL team when leading after eight innings, going 46-0.