NEW YORK — Zack Wheeler hit his first major league home run and struck out 11 in seven sharp innings as the New York Mets handed the Philadelphia Phillies their fifth loss in six games, 9-0 on Tuesday night.

The only spirit the Phillies showed came with two outs in the ninth when two fastballs by Mets reliever Jacob Rhame sailed over Rhys Hoskins’ head. The benches started to clear after the first time, and Hoskins angrily slung his bat after the next one, which was ball four.

Wheeler also doubled and drove in three runs and Todd Frazier connected for a grand slam that made it 8-0 in the fifth.

Bryce Harper was hitless in three at-bats, striking out twice before leaving for a substitute. The Phillies star had an uneventful night, a day after his wild rant at an umpire that has Major League Baseball looking at whether he should be penalized.

Wheeler (2-2) put on a power display with his bat and arm, becoming the majors’ first 100-100 player this season — he hit and pitched a ball at least 100 mph, according to Statcast.

Wheeler did it in his 100th career start, too. He fanned seven straight in the early innings, and gave himself a cushion at the plate.

DIAMONDBACKS 2, PIRATES 1: Jarrod Dyson dived around catcher Francisco Cervelli but was only credited with the winning run after a replay review, and Arizona won in Pittsburgh.

Dyson bolted from third base on David Peralta’s grounder in the sixth. Second baseman Adam Frazier fielded and threw home, and Dyson went head-first past Cervelli as the backstop applied the tag. Plate umpire Gerry Davis called Dyson out, but the call was quickly overturned on review. Dyson’s left hand touched the plate just before Cervelli’s glove tapped him on the back.

Luke Weaver (2-1) struck out seven and won his second straight start. He worked into the seventh inning for the second time this season, going 6 1/3 innings while allowing one run. He has struck out 24 batters over his last 22 2/3 innings.

Adam Jones doubled to score Eduardo Escobar in the second, his team-leading 16th RBI.

Andrew Chafin and Archie Bradley got the ball to Greg Holland, who worked around a walk and a wild pitch to earn his fifth save.

REDS 7, BRAVES 6: Yasiel Puig hit a two-run homer in the first inning off the facade of the second deck in left-center field, and Cincinnati wasted an early lead and then rallied to beat visiting Atlanta.

José Peraza had his first RBIs since homering on opening day, and Tucker Barnhart homered for the Reds, who have won four of five following a four-game losing streak.

Cincinnati led 3-0 in the fifth inning, fell behind 4-3 in the sixth, then scored four runs in the bottom half.

Peraza hit a two-run double off Kevin Gausman (1-2) for a 5-4 lead, Jessie Biddle forced in a run with a bases-loaded walk to pinch-hitter Phillip Ervin and Puig hit a sacrifice fly against Wes Parsons.

AMERICAN LEAGUE

ORIOLES 9, WHITE SOX 1: Dwight Smith Jr. hit a three-run homer, one of four long balls off Iván Nova, and Baltimore overpowered Chicago at home to end a four-game losing streak.

Renanto Núñez, Chris Davis and Joey Rickard also connected for the Orioles, who improved their home record to 2-10 before a cozy, appreciative crowd of 8,953.

Andrew Cashner (4-1) gave up one run, five hits and a walk over seven innings to win his fourth straight decision. Just as important, he provided much needed rest to a bullpen that was drained in a 12-2 loss to Chicago one night earlier.

Nova (0-3) yielded nine runs over four innings. Obtained in an offseason trade with Pittsburgh, the right-hander has an 8.42 ERA over five starts and has given up 11 hits in each of his last two outings.

After Núñez hit a solo shot in the third, Rio Ruiz singled and Davis hit his second home run of the season — the first at home since Aug. 24 — for a 4-0 lead.

In the fourth, Smith followed singles by Jonathan Villar and Trey Mancini with a long drive to right, and Rickard connected one out later with a man on.

RAYS 5, ROYALS 2: Jalen Beeks took over from opener Ryne Stanek in the second and struck out seven in 4 2/3 shutout innings, Mike Zunino homered for the second straight game and Tampa Bay beat Kansas City in St. Petersburg, Florida, sending the Royals to their fifth straight loss.

Homer Bailey (2-2) failed in his attempt to win three straight starts for the first time in five years, getting taken out after Tampa Bay’s first four batters reached in the second inning.

Zunino had three of Tampa Bay’s seven hits and drove in two runs.

AL East-leading Tampa Bay clinched its seventh series win in eight series and extended its winning streak against the Royals to 10 games. Kansas City is an AL-worst 7-17.

Beeks (1-0) allowed two hits and two walks, retiring eight straight in one stretch.

INTERLEAGUE

MARLINS 3, INDIANS 1: Pablo López allowed just two hits in his longest start this season and Jorge Alfaro homered on reliever Neil Ramírez’s first pitch, moments after Cleveland starter Carlos Carrasco left with another injury in Florida’s win in Cleveland.

López (2-3) stoapped a three-start losing streak. The right-hander, who had not gone more than 5 1/3 innings, held the Indians without a hit until the sixth and was not charged with an earned run in 6 1/3 innings.

Miami closer Sergio Romo worked the ninth for his third save, completing a three-hitter as the Marlins improved to 2-5 on the road.

Alfaro’s homer triggered Florida’s three-run fifth off Ramírez (0-1), who came in after Carrasco hurt his left knee while covering first base.

The Indians have lost three straight, and now have concerns about Carrasco.

He was lifted after four innings with a bruised left knee sustained when the right-hander landed hard scrambling to catch Carlos Santana’s errant throw. Carrasco took several warmup pitches, and seemed to talk his way into staying in to finish the inning before being replaced by Ramirez.

Not wanting to take any chances, manager Terry Francona pulled Carrasco.

It’s the latest injury for the 32-year-old, who has missed significant time in previous seasons with assorted injuries – many of them unlucky.