Jimmy Rollins hit a three-run homer, Joe Blanton pitched neatly into the seventh and the Philadelphia Phillies beat the San Francisco Giants 8-2 on Wednesday night.
The two-time NL champions have won 20 of 25 and moved two games ahead of the Giants in the wild-card race. The Phillies entered 2½ games behind Atlanta in the East.
Andres Torres and Pat Burrell hit solo homers for the Giants, who have lost three straight.
Blanton (5-6) allowed two runs and eight hits, striking out seven in 6 1-3 innings.
The Phillies have had just two players hit for the cycle in the last 47 years — Gregg Jefferies (1995) and David Bell (2004).
Pinch-hitter Domonic Brown blasted a solo homer into the second deck in right with two outs in the eighth, earning the rookie a curtain call from the sellout crowd. It also gave Rollins another chance to go for a double, but he grounded to first.
Cain gave up five runs — two earned — and seven hits in six innings. Giants starters are 0-9 with a 5.73 ERA in the last 14 games.
Carlos Ruiz put the Phillies ahead 2-1 with an RBI single during a four-run fourth. He has 21 RBIs in his last 19 games.
Before Ruiz's hit, second baseman Mike Fontenot booted Ross Gload's one-out grounder. The error proved costly when Rollins came up with two runners on and two outs. Rollins drove one deep into the seats in right to make it 5-1. His shot ended a string of 49 straight innings without a homer for Philadelphia.
Burrell cut it to 5-2 in the sixth with his 12th homer in 58 games with the Giants. He has homered in his first two games back at Citizens Bank Park since helping the Phillies win the 2008 World Series.
Raul Ibanez hit an RBI triple and Jayson Werth followed with a double to extend Philadelphia's lead to 7-2 in the seventh.
Torres crushed his 12th homer into the second deck in right field leading off the game.
Blanton allowed just one run in the first after giving up two or more in five of his eight previous starts. Overall, he's allowed 19 first-inning runs in 20 starts this season.
NOTES: Rollins stole his major league-best 28th and 29th straight bases, including 14 this year. ... Philadelphia 2B Chase Utley got his first hit since returning from thumb surgery, breaking an 0-for-7 slide with a swinging-bunt single. ... A crowd of 44,410 was the 99th straight sellout at Citizens Bank Park. ... The Phillies are 17-2 at home since July 8. ... The Giants are just 12-13 when Cain starts, but he has a 3.11 ERA.