ST. LOUIS (AP) — Jerad Eickhoff is making up for lost time.

Eickhoff allowed three hits in eight innings, César Hernández homered and drove in three runs and the Philadelphia Phillies beat the St. Louis Cardinals 5-0 on Wednesday.

Aided by a pair of double plays, Eickhoff (2-1) faced just two batters over the minimum through the first seven innings as the NL East-leading Phillies took two of three from the Cardinals and won for the fifth time in their last seven games. Eickhoff threw a season-high 106 pitches and has allowed one run over 20 innings in his last three starts.

"Early on it was just really fastball, slider," Eickhoff said. "In the third inning I started dropping a curveball in there. I was having a hard time getting it over for a strike. Once that came, it kind of opened up everything else."

Eickhoff, who missed most of the 2018 season with a right lat strain, has not allowed a home run this season, a span of 30 innings.

"He pitched with a fearlessness," Phillies manager Gabe Kapler said. "Any pitch, any count, behind in the count, secondary pitch behind in the count. He'll throw a slider outside of the zone when he's confident he's going to get a swing and he'll fill it up too. He'll fill up the zone with his breaking balls and utilizes his fastball really effectively."

Seranthony Dominguez worked the ninth to complete the three-hitter.

After winning 20 of their first 30 games, the Cardinals lost for the sixth time in their last seven.

Odúbel Herrera sparked a four-run fifth inning for the Phillies with an RBI double. Herrera has hit safely in 16 of his 18 career games at Busch Stadium.

Hernández capped the rally with a two-run double. A fielding error by Matt Carpenter helped set up the big frame for the Phillies. It was one of two errors by the Cardinals, who also committed two miscues Tuesday night that led to six unearned runs for the Phillies in the second inning of an 11-1 loss.

Hernández drove a slider from Giovanny Gallegos into the right-field bullpen in the seventh. He went 3 for 5 and has hit in 10 straight games against St. Louis.

Jack Flaherty (3-3) faced just one batter over the minimum in his first four innings before getting derailed by a 43-pitch fifth.

"We've been absolutely right there so many times and it's been one little thing has opened the floodgates numerous times," Flaherty said. "Our defense has been really good, but if something goes wrong we're not able to pitch out of it. We haven't been able to. And that's something we've got to clean up with just being able to deal with or handle whatever the situation is and continue to be able to pitch out of it."

FACES IN THE CROWD

St. Louis Blues players David Perron and Tyler Bozak were at the game. The Blues defeated the Dallas Stars in double overtime in Game 7 late Tuesday night to advance to the NHL's Western Conference final.

TRAINER'S ROOM

Cardinals: RHP Carlos Martínez (right shoulder cuff strain) will pitch Wednesday night at Triple-A Memphis. He is expected to throw between 10 and 20 pitches.

UP NEXT

Cardinals: RHP Michael Wacha (2-0, 5.17) gets the start in the opener of a four-game series against the visiting Pirates and RHP Joe Musgrove (1-3, 2.63) on Thursday night. Wacha received a no-decision in his last start, but had a pair of hits and drove in two runs at the plate for his first multi-hit and multi-RBI game since 2015.