LOS ANGELES -- On a team of stellar hitters, a pitcher made the offensive difference for the Los Angeles Dodgers.

Right-hander Dan Haren not only picked up his seventh victory but also hit a three-run double to lead the Dodgers to a 6-4 victory over the Arizona Diamondbacks on Saturday night at Dodger Stadium.

Haren's only hit of the game came during a four-run rally in the bottom of the fourth inning. The Dodgers pooled three hits and two walks into the runs that nullified a 3-1 deficit.

Right fielder Yasiel Puig tied the score when he came home on left fielder Matt Kemp's line-drive single to center field.

Four batters later, Haren drove in three runs by hitting a double off the right-field wall.

"It felt really good," Haren said. "I got in a good count and I was looking to go the other way. I got a pitch I could handle."

The double was only the second hit this season for Haren, who had been batting .115.

"I used to be a really good hitter," Haren said. "I'm not as good as I once was, but I put a good swing on that one."

Haren hit an 86 mph fastball from right-hander Josh Collmenter.

"That wasn't a good pitch," Diamondbacks manager Kirk Gibson said. "He got behind and had to throw a fastball that got too much of the plate. (Haren) crushed it."

Collmenter (4-4) allowed all six runs on eight hits while walking three and striking out three in six innings.

"He probably didn't throw a curveball until the sixth inning," Gibson said. "He doesn't throw a lot of them, but he tries to mix them in."

Why didn't Collmenter throw more curveballs? "You'll have to ask him," Gibson said.

Meanwhile, Haren induced 10 groundouts and conceded no walks in 6 1/3 innings. He allowed eight hits and three runs while striking out two batters as the Dodgers (37-33) won for the fifth time in seven games.

"I was scuffling out of the gate," Haren said. "I'm not coming out crisp. Man, it's been the same way for a long time now."

Arizona took a 2-0 lead in the top of the first inning when first baseman Paul Goldschmidt hit his 14th home run of the year, a two-run drive into the left-field stands. Goldschmidt's homer came one out after shortstop Didi Gregorius began the game with a double.

"I got burned with the cutter on Gregorius, then I hung the cutter again to Goldschmidt," Haren said. "So I went more with the fastball, the curve and the splitter, and I just tried to waste some cutters. My splitter was pretty good as the game was going along."

Dodgers second baseman Dee Gordon tied the score in the third with a two-run homer down the right-field line. But the Diamondbacks used three successive singles in the fourth to move ahead 3-2. Catcher Miguel Montero scored on third baseman Martin Prado's single up the middle.

Prado went 3-for-4, had a double and a home run and drove in two runs. Prado's home run was his 1,000th career hit, making him the 26th Venezuelan in major-league history to achieve that feat.

Nevertheless, the Diamondbacks (29-42) lost their fourth straight game and their fifth in the past six. Prado hit his home run off right-handed closer Kenley Jansen, who posted his 19th save.

Asked about Prado's accomplishment, Gibson declined to talk about it.

"I'm not thinking about that right now," Gibson said. "I'm thinking we just got our (posteriors) kicked."

Goldschmidt executed the Diamondbacks' second unassisted double play in two nights. Dodgers first baseman Adrian Gonzalez took a lead off first base with one out in the second and Goldschmidt caught center fielder Andre Ethier's line drive and stepped on first base to retire Gonzalez.

NOTES: Former Dodgers manager Tommy Lasorda and current coaches Rick Honeycutt and Mark McGwire attended Saturday's funeral service for former major league P Bob Welsh in Scottsdale, Ariz. Welch, 57, died at his home Monday. Lasorda managed Welch during the pitcher's 10 seasons with the Dodgers. Honeycutt and McGwire were Welch's teammates with the Oakland Athletics. ... Dodgers INF Chone Figgins went on the disabled list Saturday with a strained left quadriceps. INF Carlos Triunfel was recalled from Triple-A Albuquerque. ... CF Andre Ethier needed three hits to move into eighth place on the Dodgers' career list. Ethier had 1,202 hits, two behind Davey Lopes. ... Arizona manager Kirk Gibson needed one more victory to balance his career record at .500 and 19 to become the Diamondbacks' career leader in wins.