KANSAS CITY, Mo. — Just when you think that Zach Eflin can’t possibly pitch any better, he darn near morphs into Greg Maddux before your very eyes.

Six nights after the Phillies right-hander stymied the Nationals for seven innings, 13 nights after he tossed a complete game against the Marlins, he put together his best performance yet. Eflin shut out the Royals on 110 pitches in a 7-0 victory at Kauffman Stadium on Saturday night, continuing a roll that ranks with any in his four-year major-league career.

"Two of the most dominant outings I've seen in a long time," catcher Andrew Knapp said of the two complete games, part of a three-start stretch in which Eflin has allowed two runs in 25 innings. "It's awesome. I feel really fortunate to be able to catch him."

The latest gem marked Eflin’s second career shutout, the other coming on July 22, 2016, in Pittsburgh. That game, like this one, occurred in the midst of an impressive stretch in which he posted a 2.08 ERA in seven starts.

But there’s something about this Eflin roll that’s different. He has embraced the idea of getting contact early in counts. With Knapp’s help behind the plate, he’s mixing his fastball, slider, sinker, and change-up into a brew that opposing hitters can’t handle. He’s going deep into games, giving the bullpen days off, and walking off the mound with a swagger that manager Gabe Kapler hasn’t seen before.

"He's grabbing the ball, attacking the zone, and when he comes in off the mound, it's a very confident look," Kapler said. "There's no question about whether we should send him back out, if we should have somebody up behind him. And all that is based on the efficiency thing. He is just filling up the strike zone with all of his pitches."

The Royals didn’t stand a chance. Eflin threw a first-pitch strike to 19 of 31 batters. He got quick contact, mostly on the ground, throwing only 27 pitches through the first three innings. And after laboring through a 22-pitch fourth inning in which he hit back-to-back batters with two outs, he threw 10 pitches in the fifth inning, four in the sixth, and 11 in the seventh.

“To be able have early outs and ground-ball double plays is massive in this game,” Eflin said. “So to be to go out and execute pitches and let the guy behind the plate think, it’s just been a lot of fun.”

Indeed, Eflin and Knapp have become a better combination than peanut butter and jelly. They've worked together for years, since they were teammates in double-A. But their rapport has never been better, with Eflin crediting Knapp for devising expert game plans and Knapp deflecting to Eflin's execution.

Kapler prefers not to team pitchers with a personal catcher. But he also isn't about to ruin a good thing. Knapp almost certainly will catch Eflin's next start, scheduled for Thursday at home against the Brewers.

"He knows what I’m best at, probably even more so than I do myself," Eflin said. "He knows what’s working and what isn’t, and he’s always up my [butt] trying to get me to stay on each pitch and get ahead of guys and be aggressive. To have someone chirp in your ear like that is huge. It’s just been a lot of fun."

Said Kapler: “[Knapp] has led in the ideal way whenever Ef has been on the mound. I am strongly opposed to any personal catcher. I will say this: If he throws complete-game shutouts, I will not not have Knapp catch him the next time out.”

The Phillies built a six-run lead with a combination of timely hits (Rhys Hoskins' two-run single in the third inning comes to mind) and taking advantage of the Royals' mistakes.

By the eighth inning, the only drama was whether Eflin could complete the game in less than 100 pitches, a feat that has become known as “a Maddux” in honor of the pitcher who did it 13 times since pitch-count data became available in 1988. Eflin had done it once before, on July 5, 2016, against the Braves. It has happened only twice so far this season by Dodgers lefty Hyun-Jin Ryu and Cubs right-hander Kyle Hendricks.

Eflin finished the eighth inning at 89 pitches. But Whit Merrifield worked a full count before grounding out to lead off the ninth inning. And Adalberto Mondesi's six-pitch strikeout pushed Eflin to 101.

No Maddux, but no matter. Eflin gave up a two-out double to Alex Gordon before striking out Hunter Dozier to finish what he started for the second time in two weeks.

“I just trust myself a lot more than I ever have,” Eflin said.

It shows.