Astros 4, Diamondbacks 1

HOUSTON – Roy Oswalt matched a season high with eight strikeouts and dominated Arizona again to lead the Astros to the victory.

Oswalt (8-7) allowed six hits in eight innings, improving to 5-0 in five career starts against the Diamondbacks. He won for just the third time since June 14.

Chris Snyder homered for Arizona in the fifth, the first run the Diamondbacks had scored on Oswalt in 21 innings – and two years. Oswalt then retired 10 straight before Eric Byrnes singled with one out in the eighth.

Brad Lidge pitched a perfect ninth to earn his 23rd save in 27 opportunities.

Craig Biggio homered and Willy Taveras had a two-run triple to help the Astros win for just the sixth time in 15 games since the All-Star break.

Juan Cruz (3-6) gave up three runs and five hits in seven innings to get the loss.

Phillies 12, Marlins 3

PHILADELPHIA – Ryan Howard hit his NL-leading 34th homer and Chase Utley extended his hitting streak to 29 games for the Phillies.

Utley singled, homered and drove in three runs, and Pat Burrell and Aaron Rowand also connected, helping the Phillies send Dontrelle Willis to his earliest exit in 2 years.

Philadelphia’s Cole Hamels (3-5) allowed three runs and five hits, striking out seven in 7 1-3 innings, the longest start in his brief career. The rookie left-hander left after Joe Borchard hit a hard one-hopper off his left leg in the eighth inning. Hamels has a bruise below his knee but X-rays were negative.

Willis (6-8) gave up eight runs – six earned – and five hits in 2 1-3 innings, his shortest outing since lasting just one inning against San Francisco on April 30, 2004.

Only subscribers are eligible to post comments. Please subscribe or to participate in the conversation. Here’s why.

Use the form below to reset your password. When you've submitted your account email, we will send an email with a reset code.