Rafael Furcal has broken out of an early season slump in a big way and Carlos Lee is beginning to feel more comfortable after a slow start, too.

Furcal continued his extraordinary offensive surge with four hits Tuesday night, and the Los Angeles Dodgers beat St. Louis 9-7 to snap a 10-game losing streak to the Cardinals.

Furcal has four hits in three straight games _ the first major leaguer to accomplish that feat since Marcus Giles did it for the Atlanta Braves in 2003. Furcal played for the Braves at that time.

``It was in Montreal. I remember that,'' the Dodgers' switch-hitting shortstop said. ``It was unbelievable.''

That pretty much tells the story regarding Furcal, who has 14 hits in his last 16 at-bats to raise his batting average from .214 to .297.

``I say, `Thank God,' because it's unbelievable,'' Furcal said with a smile.

Lee hit a solo home run, his second of the game, in the 10th inning off Jonathan Sanchez (1-1) to lift the Houston Astros to a 6-5 win over the San Francisco Giants.

The Giants rallied from a 3-0 deficit to take a 5-3 lead into the bottom of the eighth but Hunter Pence tied it with a two-run drive off Armando Benitez. Lee then won it with his ninth home run of the season and the third game-winning homer of his career.

``We know what we have in this clubhouse is the ability to do a lot of damage and score a lot of runs,'' Lee said. ``So we expect to score runs every day and do good every day.''

In other NL games, it was: Philadelphia 4, Milwaukee 3; Chicago Cubs 10, New York Mets 1; Atlanta 6, Washington 2; Arizona 3, Colorado 0; Cincinnati 2, San Diego 1, 12 innings; and Florida 9, Pittsburgh 3.

At Houston, Lee went 4-for-4, scored four runs and finished with two RBIs and Hunter Pence was 3-for-3 with three RBIs for the Astros, who won for the ninth time in 13 games. Chad Qualls (4-1) pitched a scoreless 10th to get the win.

Furcal had hits off Adam Wainwright (3-3) in each of the first three innings, and another off Russ Springer in the seventh.

Derek Lowe (4-4) earned the victory despite a shaky performance, allowing eight hits and four runs in 5 1-3 innings in Los Angeles. Takashi Saito worked the ninth for his 12th save.

Phillies 4, Brewers 3

At Philadelphia, Carlos Ruiz hit a solo homer with two outs in the ninth to lift the Phillies to the win.

Brett Myers allowed Johnny Estrada's tying solo homer in the ninth for his first blown save, but Ruiz connected off Derrick Turnbow (1-2) for his first career game-winning homer.

Myers (1-2) had converted his first four save opportunities since replacing injured closer Tom Gordon, and hadn't allowed a run since his first relief appearance.

Turnbow, the losing pitcher Monday night, retired the first two batters in the ninth. But Ruiz drove a 2-1 pitch into the left-center field seats for his third homer.

The Phillies have won five of six.

Cubs 10, Mets 1

Aramis Ramirez hit a grand slam and Carlos Zambrano pitched eight sharp innings for Chicago.

Cliff Floyd had three hits and an RBI in his first start at Shea Stadium since spending the previous four seasons with the Mets, and Chicago handed John Maine (5-1) his first loss of the year.

Ramirez's seventh career slam, off Scott Schoeneweis, broke it open in a six-run sixth.

Zambrano (4-3) allowed six hits, walked three and struck out three.

Shawn Green homered in the fifth inning for the Mets, who had won five of six and nine of 12. Carlos Delgado left in the seventh, one inning after he was hit on the left hand by Zambrano's pitch. He is day to day with a bruised pinky.

Braves 6, Nationals 2

Edgar Renteria hit two home runs, Tim Hudson allowed one run in seven innings, and Atlanta ended the Nationals' four-game winning streak.

Renteria went 3-for-5 as the visiting Braves snapped a two-game losing streak. Atlanta has won six of its last eight.

Hudson (5-1) had a perfect game through 4 2-3 innings and lowered his ERA to 1.77. Hudson gave up three hits, walked one and struck out four before leaving for a pinch hitter in the eighth.

Washington right-hander Jerome Williams (0-5), who was activated from the disabled list to make the start, promptly went down with another injury in the third inning. Williams was removed from the game with a strained rotator cuff. He allowed five runs and seven hits, and did not retire any of the four batters he faced in the third.

Diamondbacks 3, Rockies 0

Arizona's Randy Johnson allowed one hit over six innings and outpitched Jason Hirsh.

For the second straight start, Johnson (1-2) looked like The Big Unit who won five Cy Young Awards. Johnson, who underwent back surgery last October, struck out nine and walked none in winning for the first time since his return to Arizona after two frustrating seasons with the New York Yankees.

Tony Pena gave up one hit in two scoreless innings and Jose Valverde finished the three-hitter with his 13th save in 15 chances.

Hirsh (2-4) allowed three earned runs and seven hits in eight innings.

Conor Jackson hit his first home run since Oct. 1 and Eric Byrnes connected for his sixth of the season.

Reds 2, Padres 1, 12 innings

Ken Griffey Jr. hit a leadoff homer in the 12th inning to help Cincinnati end a four-game losing streak.

Griffey hit his eighth of the season and career homer No. 571 off Heath Bell (0-2) on a full-count fastball. Griffey has hit all of his homers this season in the last 18 games.

The Reds won for just the third time in 14 games and also broke a six-game road losing streak.

David Weathers (1-2) pitched three perfect innings to get the win and finish off the two-hitter.

Griffey's big hit came after the Padres tied it in the eighth on a balk by Aaron Harang, who allowed two hits, walked four and struck seven in nine innings.

Marlins 9, Pirates 3

Dan Uggla drove in four runs while hitting two of Florida's four homers, helping Sergio Mitre win for the first time in more than a year.

Hanley Ramirez also homered while reaching base five times for Florida, which snapped a four-game losing streak. Jeremy Hermida hit a solo shot as the Marlins won for only the fifth time in their last 18 games in Pittsburgh.

Mitre (1-2) gave up three runs _ two earned _ and eight hits in 7 2-3 innings. He ended a six-game losing streak that spanned 19 appearances since April 4, 2006.

Florida had a four-run sixth against Paul Maholm (2-5) highlighted by Uggla's go-ahead, two-run homer.