PHOENIX -- After a weeklong road trip, the D-backs were happy to be home.
Just how happy, the Marlins found out the hard way.
Powered by a season-high five home runs and a career-high four extra-base hits from Kelly Johnson, the D-backs blasted the Marlins, 15-4, in front of 23,465 at Chase Field on Monday night.
"I expected they would be happy to be home," said Arizona manager Kirk Gibson.
And they were -- none more than Johnson, who homered twice and fell a single short of his second career cycle, and Justin Upton, who was a perfect 5-for-5 at the plate.
"We love coming home and we love hitting in this park," Upton said. "We came out and jumped on them early, and the bats came alive."
The D-backs have won seven straight games, 15 of their past 17 and lead the National League West by a half-game over the Giants.
"We feel good about ourselves and we've played good at home," Gibson said. "We have some momentum going for us and we're on a little run right now."
This particular run started with a Gerardo Parra solo home run to left -- the first of four opposite-field blasts by D-backs left-handers -- with Arizona trailing 2-0 in the third inning. Johnson repeated the feat two batters later before four straight two-out singles scored two runners and gave the D-backs a lead they would not relinquish.
Starting pitcher Joe Saunders picked up his second win of the season, going six innings and allowing four runs on seven hits while striking out seven.
"It was a battle out there for me right from the first inning," said Saunders, who worked out of a bases-loaded, no-out first-inning jam.
"I didn't have my best stuff, but like I've preached all year, you just gotta keep the team as close as possible and we came up with some huge hits tonight."
Saunders was lifted after 93 pitches. He walked none.
"He did a good job of getting out of [the jam]," Gibson said. "He kept us in the game."
Beginning in the third inning, the D-backs scored in five straight frames, bookended with four-run outbursts.
In the sixth, Johnson smacked his second home run of the game before Upton and Stephen Drew singled back-to-back and advanced on a double-steal, which scored Upton after Marlins reliever Joe Webb threw a pickoff attempt down the left-field line.
With Drew on third, Chris Young walked and a batter later, Miguel Montero hit a 2-2 pitch into the left-field seats for an 11-4 D-backs lead.
Arizona strung together four consecutive hits to start the seventh, highlighted by an RBI triple from Johnson and Upton's 10th home run of the season -- in massive fashion -- launching an 0-1 offering from Mike Dunn into the upper deck in left.
"I got some good pitches to hit tonight and didn't miss them," Upton said.
Johnson batted in the eighth a single shy of hitting for the cycle, but he struck out swinging on a fastball against Marlins closer Leo Nunez.
"He's one of the best in the game," Johnson said. "It's not ever an easy at-bat. I was looking for something in the zone but was also respecting his changeup. He just went fastball in and it was tough to face."
The second baseman has hit safely in six straight games, is hitting .333 (18-for-54) in his past 13 games and has five home runs in his past nine.
"I feel real good," he said. "I hit some balls hard and got some good pitches to hit. When that happens, it's nice."
Johnson tied a career-high with four hits and became only the second player in the Major Leagues with four extra-base hits this season. Upton's five hits also tied a career-high, and the right fielder recorded his team-leading 15th multi-hit game.
Anthony Fenech is an associate reporter for MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.