Paul Goldschmidt also homered for the D-backs, who pounded out 16 hits. It was the first time Arizona hit six homers in a game since June 20, 2012. Ray, meanwhile, allowed two runs on seven hits over six innings to win his second straight start.

"You know if you get the barrel of the bat on the ball in this ballpark, you've got a chance," D-backs manager Chip Hale said. "One thing, when you get some runs, we preach it, 'Let's keep the line moving. Don't let the other team feel like they can come back in the game.'"

The Phillies grabbed a 2-0 lead in the first inning when Cameron Rupp's two-out triple off the wall in right-center scored Cody Asche and Tommy Joseph. Philadelphia committed three errors, however,which led to three unearned runs.

"More times than not, they're going to make those plays," Morgan said. "That's no excuse for how the ballgame went."

MOMENTS THAT MATTERED

Hits that count: O'Brien entered Friday's game with just one hit in 15 big league at-bats this year, a home run June 12 against the Marlins. When the night was done he was 3-for-20 with three home runs. O'Brien hit a three-run homer to right-center in the fifth and a solo shot to left in the seventh. O'Brien had 17 home runs in Triple-A Reno before being called up.

"Let's mix in some singles, huh?" O'Brien joked. "I'll mix them in when they come, but I'll keep taking the homers." More >

Errors cost Phils ... again: Two Cesar Hernandez errors in the second