PHILADELPHIA (AP) Zack Greinke isn't just throwing strikes - he's throwing his pitches exactly where he wants them.
That's meant a real tough time for the opposition.
Greinke won his seventh straight start, pitching three-hit ball for eight innings to lead the Arizona Diamondbacks over the Philadelphia Phillies 4-1 on Saturday.
Greinke (10-3) continued to display why the Diamondbacks signed him to a six-year, $206.5 million deal in the offseason. After a slow start, the three-time All-Star and former Cy Young winner has a 1.90 ERA during his winning streak.
The key has been control.
''I feel like I've been throwing more quality strikes instead of just throwing strikes,'' Greinke said. ''It's more where I want it to be. It's tough for the hitters to lay off, but tough for them to hit at the same time.''
Greinke struck out six and walked one.
That's a good word: dominant,'' Arizona manager Chip Hale said. ''He understands his stuff and understands the team he's pitching against.''
Greinke was lifted after 94 pitches, as Hale didn't want to overextend his ace after Greinke threw 119 in his previous outing.
''I felt pretty good but just didn't want to push it after the last start,'' Greinke said. ''And we have one of the better closers in the game.''
Brad Ziegler closed for his 14th save of the season and 42nd straight dating to May 2015.
Paul Goldschmidt, Jake Lamb and Nick Ahmed hit home runs to back Greinke. Arizona has hit nine homers in two consecutive wins over Philadelphia.
Odubel Herrera homered for the Phillies, who have lost five in a row and 22 of 28.
''That was vintage Greinke,'' Philadelphia manager Pete Mackanin said. ''He gave a clinic on pitching.''
The Diamondbacks have won five of seven while improving to 18-14 on the road. They are 13-25 at home.
Jerad Eickhoff (4-9) allowed three runs on nine hits in 5 2/3 innings.
Herrera homered with one out in the first to put Philadelphia ahead. Greinke retired 17 of the next 18 batters.
''Just make good pitches the rest of the game,'' Greinke said. ''That was a bad pitch. I can't do that much more or they'll score runs.''
Arizona took the lead with three runs in the fifth.
''It was nice to get a few runs for (Greinke),'' Lamb said. ''The way he's been pitching, that's all we needed.''
Ahmed, who had three hits, tied it with a homer. Goldschmidt hit his 14th homer with two outs, a two-run drive extending his hitting streak to 12 games. Lamb hit his 13th homer in the seventh off Severino Gonzalez.
A double by Jimmy Paredes put runners at second and third with one out in the Phillies seventh. Greinke came back from a 3-0 count to strike out Maikel Franco with a 77-mph curveball before getting Carlos Ruiz to line out.
The Phillies have surrendered 20 home runs during their losing streak. Over that stretch, opponents have collected 67 hits.
''I've got a few tricks left in my bag, but I'm running out,'' Mackanin said.
Goldschmidt finished 2 for 5 and is batting .408 during his hitting streak.
''He's raking,'' Lamb said. ''Everyone knew it was just a matter of time. It's fun to see.''
BLEW BY YOU
Prior to homering, Lamb stepped out of the box and took a walk to regroup. He wasn't injured and didn't have an equipment issue.
He said he was just embarrassed after Eickhoff blew a fastball by him.
''That's called a `bayou' pitch because it goes right by you,'' he said.
Arizona RHP Archie Bradley (2-3, 5.66) opposes Phillies RHP Zach Eflin (0-1, 27.00) on Sunday in the third game of the four-game set.