Updated

Kyle Lohse continued his mastery of hitters. Unfortunately for the St. Louis Cardinals, Roy Halladay matched him.

Lohse allowed one run and four hits while setting a season high with seven strikeouts in seven innings. But Halladay pitched eight superb innings and Chase Utley hit a tiebreaking, two-run homer in the eighth off reliever Barret Browning to lift the Philadelphia Phillies to a 3-1 victory over St. Louis on Friday night.

"Two pitchmakers out there doing a great job," St. Louis manager Mike Matheny said.

Lohse, who walked two, allowed only three batters to reach second base.

"Everything was working for him," Matheny said. "He pitched seven solid innings. You couldn't ask for more."

The Cardinals threatened in the ninth off Jonathan Papelbon, who pitched a scoreless inning for his 25th save in 28 chances. Papelbon gave up a one-out double to Allen Craig and a two-out single to Carlos Beltran to put runners on first and third. But Papelbon got Beltran trying to steal second, throwing ahead of the runner after he left first base too early.

"I got a little anxious," Beltran said. "There's no guarantee we would win the game, but you can't end a game like that."

Beltran homered for the Cardinals, who have lost three of four and ruined another solid effort by Lohshe.

The right-hander has been stellar all season and was 6-0 in his last nine starts entering Friday. He had given up two earned runs or less in eight of the nine outings with a 2.52 ERA in those starts.

"My change was real good," he said. "They stacked their lineup with left-handers. I knew I had to get it going and I did. It's a tough loss but we'll get over it."

The Cardinals couldn't get anything going against Halladay, who is starting to feel in sync again.

It was the second straight outstanding outing for Halladay (6-6), who missed 42 games while on the disabled list with a strained lat. He returned July 17 and struggled in his first three starts back, going 0-1 with a 5.82 ERA. He threw seven innings in a 3-0 victory over Arizona on Saturday.

The right-hander matched a season low by allowing just two hits while striking out eight and walking none to help Philadelphia win its fourth game in the last six.

"I feel more in sync now than I did early on," Halladay said. "I had a hard time, I just didn't feel together. I didn't feel like everything was kind of clicking. Moreso the last two starts, I've felt like that's been better."

He didn't allow a hit after Jon Jay's two-out single in the third, retiring 16 of his final 17 batters. The only hitter to reach base was Yadier Molina, who got to first after being hit on the left elbow leading off the fifth.

"He kept guys off base, good change, good command," Matheny said. "He looked like the Halladay we've seen too many times."

Said Beltran, "Halladay is one of the best in the league when he's healthy and he showed it tonight."

Beltran did the only damage against the Philadelphia righty, homering to right to lead off the second and give the Cardinals a 1-0 lead.

The Phillies tied it in the bottom half. Ryan Howard opened it with a double to right and scored on Domonic Brown's single that glanced off the glove of diving second baseman Daniel Descalso and into short right field.

Lohse was pinch hit for with two outs in the eighth, but Halladay struck out Matt Carpenter.

Phillies manager Charlie Manuel was glad to see Lohse exit.

"He did the same thing Roy did, he was very good," Manuel said. "When he left the game, I was sitting there thinking, 'That's good.'"

Jimmy Rollins led off the eighth with a single to left off Browning (0-1), went to second on the left-hander's balk and to third on Juan Pierre's sacrifice bunt before scoring on Utley's towering homer to right-center that gave Philadelphia a 3-1 lead.

"You're not trying to do too much, you're trying to get that guy in any way you can," Utley said. "That one felt pretty good. I squared that one up decently."

Notes: The Phillies inducted former C Mike Lieberthal into the club's Wall of Fame in a pregame ceremony that was attended by Hall of Famers Mike Schmidt and Steve Carlton, among other Phillies greats. ... St. Louis called up INF Ryan Jackson from Triple-A Memphis before the game. ... Phillies minor leaguer Gabriel Bermudez was suspended 50 games for a violation of Major League Baseball's drug policy. Bermudez was playing on the club's Venezuelan Summer League team. ... The three-game series continues Saturday night with LH Cliff Lee (2-6, 3.78) scheduled to face Cardinals RH Jake Westbrook (11-8, 3.76).