PHOENIX -- Jamie Moyer allowed seven baserunners before recording an out in the third inning.
Somehow, none of them scored.
Ryan Howard hit a two-run homer, Jimmy Rollins, Raul Ibanez, Pedro Feliz and Paul Bako each drove in a run as the Phillies stretched their lead in the NL East to a season-high seven games over Atlanta and Florida, which were idle. The defending world champions improved to a majors-best 30-15 on the road.
Baffling the weak-hitting Diamondbacks with a mix of 80 mph fastballs and even softer changeups, the 46-year-old Moyer (10-7) worked out of jams in each of the first three innings.
"I've been in a lot of innings where I've been in trouble throughout my career, so that doesn't change," Moyer said with a chuckle. "For me, the hurdle is making the adjustment and making the appropriate adjustment and moving forward."
Moyer tinkered with his deliver as he warmed up before the fourth inning, changing the way he picked up his front leg.
"It allowed me to get on top of the ball and create a better angle," Moyer said.
Until then, Moyer seemed to be one pitch away from disaster.
With two on and two out in the first, Moyer retired hot-hitting Miguel Montero on a grounder to first base.
"If he gets under that ball, he probably drives it in the gap and they score two or three runs," Moyer said. "He got on top of it and he hit a ground ball to second base.
"To me, that's why this game is such a finite game," Moyer said. "It's amazing how little things like that can make a big difference."
The first two men reached base in the third, but Moyer retired the next three hitters without allowing a ball out of the infield. That began a stretch in which Moyer set down 14 of 15.
Moyer left with two on and two outs in the seventh, tipping his cap to acknowledge a standing ovation from Phillies fans behind the visiting dugout.
Moyer allowed six hits, walking four and striking out five.
"He was cutting it, sinking it, throwing his changeup," said Arizona third baseman Mark Reynolds, who hit his 27th homer, second in the majors behind Albert Pujols. "You match that with over-aggressive hitters, and we're going to get ourselves out, and that's what we did tonight."
The Phils gave Moyer a 2-0 lead in the fourth when Howard hammered a 1-1 delivery from Garland an estimated 410 feet into the left-center field seats. It was Howard's 26th homer.
"The guy's a great hitter," Garland said. "That's what he gets paid to do."
Philadelphia made it 3-0 on a two-out double by Rollins in the fifth.
The Phils added three more runs in the sixth as the Diamondbacks staged one of their patented meltdowns in the field.
After Chase Utley led off with a walk, second baseman Roberts bobbled Howard's bouncer for an error, and Utley raced all the way to third because no one was covering the bag.
Ibanez singled to make it 4-0. The next two runs scored on fielder's choice grounders, with the Diamondbacks botching easy double plays both times.
The Diamondbacks have 83 errors, second-most in the NL. That's more than twice as many as the Phillies, whose 40 errors are the fewest in the league.
"In order to be a good team, you've got to catch the ball," Philadelphia manager Charlie Manuel said.
"We never really counterpunched," Arizona manager A.J. Hinch said. "We never finished off any small rally that we got."
Arizona C Chris Snyder, returning from a lower back strain, was to make his final rehab appearance at Triple-A Reno on Monday night. He could rejoin the Diamondbacks before the Phillies series ends Wednesday. ... Hinch, then a catcher with Oakland, homered against Moyer on April 11, 1999, when the lefty pitched for Seattle.